
/* WARNING: Function: __x86.get_pc_thunk.bp replaced with injection: get_pc_thunk.bp */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

bfd_boolean __regparm3 process_symbol_table(Filedata *filedata)

{
  Filedata *filedata_00;
  bfd_vma *pbVar1;
  double dVar2;
  double dVar3;
  ushort uVar4;
  FILE *pFVar5;
  ulong uVar6;
  ulong uVar7;
  Elf_Internal_Shdr *pEVar8;
  byte bVar9;
  undefined *puVar10;
  wchar_t wVar11;
  int iVar12;
  size_t sVar13;
  int iVar14;
  uint uVar15;
  char *pcVar16;
  uint *puVar17;
  uint *puVar18;
  void *pvVar19;
  uint uVar20;
  uint *puVar21;
  char **filedata_01;
  char *pcVar22;
  size_t sVar23;
  uint uVar24;
  bfd_boolean bVar25;
  uint uVar26;
  ulong *strtab;
  uint uVar27;
  ulong *sec;
  bool bVar28;
  elf_vma eVar29;
  elf_vma eVar30;
  elf_vma eVar31;
  FILE *pFVar32;
  undefined4 in_stack_fffffefc;
  undefined4 uVar33;
  versioned_symbol_info *sym_info;
  FILE *in_stack_ffffff00;
  ushort *vna_other_00;
  Elf_Internal_Sym *in_stack_ffffff04;
  bfd_vma *local_f4;
  Filedata *local_ec;
  uint uStack_e8;
  uint local_e0;
  uint *local_dc;
  Filedata *local_d4;
  bfd_vma *local_cc;
  bfd_vma *local_c4;
  char *local_bc;
  uint *local_b4;
  uint local_b0;
  bfd_vma *local_90;
  undefined8 local_8c;
  Elf_Internal_Sym *local_80;
  size_t local_7c;
  bfd_vma *local_78;
  undefined8 local_74;
  bfd_vma *local_6c;
  uint local_5c;
  int local_58;
  uint local_54;
  uint local_50;
  ushort vna_other;
  uchar nb [8];
  uchar nc [8];
  uchar local_24 [20];
  
  local_dc = (uint *)dynamic_info[4]._4_4_;
  if (do_dyn_syms == 0 && do_syms == 0) {
    if (do_histogram == 0) {
      return 1;
    }
    local_e0 = (uint)dynamic_info[4];
    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) goto LAB_00033f90;
    eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);
    if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {
      local_cc = (bfd_vma *)0x0;
      local_78 = (bfd_vma *)0x0;
      eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);
      goto LAB_00032d84;
    }
    local_cc = (bfd_vma *)0x0;
    local_78 = (bfd_vma *)0x0;
    local_e0 = (uint)dynamic_info_DT_GNU_HASH;
    local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;
LAB_00033740:
    local_54 = (uint)dynamic_info[4];
    local_50 = dynamic_info[4]._4_4_;
    if ((uint)dynamic_info[4] == 0 && dynamic_info[4]._4_4_ == 0) {
      local_74 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);
      local_8c = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);
      local_90 = (bfd_vma *)0x0;
      local_6c = (bfd_vma *)0x0;
      goto LAB_0003378f;
    }
LAB_000332bc:
    local_74 = 0;
    local_8c = 0;
    local_90 = (bfd_vma *)0x0;
    local_6c = (bfd_vma *)0x0;
    local_54 = 0;
    local_50 = 0;
LAB_000333c0:
    local_7c = (size_t)eVar31;
    if (do_syms == 0) goto LAB_0003378f;
    if (do_using_dynamic != 0) {
      if ((dynamic_strings == (char *)0x0) || (dynamic_symbols == (Elf_Internal_Sym *)0x0)) {
        if (do_dyn_syms != 0) goto LAB_00033a30;
        goto LAB_000337b9;
      }
      if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {
        pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5);
        printf(pcVar16);
        if (is_32bit_elf == 0) {
          pcVar16 = (char *)dcgettext(0,
                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"
                                      ,5);
          printf(pcVar16);
        }
        else {
          pcVar16 = (char *)dcgettext(0,
                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",
                                      5);
          printf(pcVar16);
        }
        pvVar19 = xcmalloc(local_e0,1);
        pcVar16 = (char *)0x0;
        memset(pvVar19,0,local_e0);
        if (eVar31 != 0) {
          local_ec = (Filedata *)0x0;
          do {
            uVar15 = (uint)local_78[(int)local_ec];
            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);
            if (uVar24 != 0 || uVar15 != 0) {
              do {
                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);
                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||
                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {
                  pcVar16 = "histogram chain is corrupt\n";
                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);
                  error(pcVar22);
                  break;
                }
                *(char *)((int)pvVar19 + uVar15) = '\x01';
                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);
                uVar15 = (uint)local_cc[uVar15];
              } while (uVar24 != 0 || uVar15 != 0);
            }
            local_ec = (Filedata *)((int)local_ec + 1);
          } while ((Filedata *)local_7c != local_ec);
        }
        free(pvVar19);
      }
      if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {
        pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);
        printf(pcVar16);
        if (is_32bit_elf == 0) {
          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";
          pcVar22 = (char *)dcgettext(0,
                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"
                                      ,5);
          printf(pcVar22);
        }
        else {
          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";
          pcVar22 = (char *)dcgettext(0,
                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",
                                      5);
          printf(pcVar22);
        }
        if (local_50 != 0 || local_54 != 0) {
          uVar15 = 0;
          do {
            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);
            uVar24 = (uint)local_6c[uVar15];
            if (iVar12 != 0 || uVar24 != 0) {
              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);
              uVar24 = uVar24 - (uint)local_8c;
              do {
                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);
                if (local_74._4_4_ <= uVar26 &&
                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;
                uVar26 = uVar26 + (0xfffffffe < uVar24);
                pbVar1 = local_90 + uVar24;
                uVar24 = uVar24 + 1;
              } while ((*pbVar1 & 1) == 0);
            }
            uVar15 = uVar15 + 1;
          } while (local_54 != uVar15);
        }
      }
      goto LAB_00033418;
    }
    if (do_dyn_syms == 0) goto LAB_000341b6;
LAB_00033a30:
    local_ec = (Filedata *)filedata->section_headers;
    if (local_ec != (Filedata *)0x0) {
LAB_00033a43:
      puVar10 = PTR_stdout_000b3fd8;
      if ((filedata->file_header).e_shnum != 0) {
        filedata_01 = &filedata->string_table;
        local_b0 = 0;
        do {
          pFVar5 = local_ec->handle;
          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&
             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {
            uVar6 = (local_ec->file_header).e_flags;
            uVar7 = (local_ec->file_header).e_version;
            sec = &filedata->string_table_length;
            if (uVar6 == 0 && uVar7 == 0) {
              pcVar16 = printable_section_name
                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);
              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);
              printf(pcVar22,pcVar16);
            }
            else {
              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,
                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,
                                 uVar6);
              nb._0_4_ = uVar33;
              pcVar16 = printable_section_name
                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);
              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",
                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,
                                           5);
              printf(pcVar22,pcVar16,uVar33);
              if (is_32bit_elf == 0) {
                sym_info = (versioned_symbol_info *)0x5;
                pcVar16 = (char *)dcgettext(0,
                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"
                                           );
                printf(pcVar16);
              }
              else {
                sym_info = (versioned_symbol_info *)0x5;
                pcVar16 = (char *)dcgettext(0,
                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"
                                           );
                printf(pcVar16);
              }
              if (is_32bit_elf == 0) {
                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)
                ;
              }
              else {
                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)
                ;
              }
              if (local_80 != (Elf_Internal_Sym *)0x0) {
                uVar15 = (uint)(local_ec->file_header).e_phoff;
                if (uVar15 == (filedata->file_header).e_shstrndx) {
                  local_bc = filedata->string_table;
                  local_d4 = (Filedata *)filedata->string_table_length;
                }
                else {
                  local_d4 = (Filedata *)0x0;
                  local_bc = (char *)0x0;
                  if (uVar15 < (filedata->file_header).e_shnum) {
                    pEVar8 = filedata->section_headers;
                    sym_info = (versioned_symbol_info *)0x5;
                    pcVar16 = (char *)dcgettext(0,"string table");
                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset
                                                ,1,pEVar8[uVar15].sh_size,pcVar16);
                    if (local_bc != (char *)0x0) {
                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;
                    }
                  }
                }
                if (nb._0_4_ != 0) {
                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);
                  uVar15 = 0;
                  strtab = &local_80->st_name;
                  do {
                    pcVar16 = "%6d: ";
                    uVar24 = uVar15;
                    printf("%6d: ");
                    print_vma(CONCAT44(uVar24,pcVar16),
                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);
                    pFVar32 = *(FILE **)puVar10;
                    uVar33 = 0x20;
                    putc(0x20,pFVar32);
                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));
                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,
                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));
                    printf(" %-7s",pcVar16);
                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));
                    printf(" %-6s",pcVar16);
                    if ((filedata->file_header).e_ident[7] == '\x06') {
                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));
                      printf(" %-7s",pcVar16);
                    }
                    else {
                      bVar9 = *(uchar *)((int)strtab + 5) & 3;
                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));
                      printf(" %-7s",pcVar16);
                      if (*(uchar *)((int)strtab + 5) != bVar9) {
                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^
                                                                  bVar9));
                        printf(" [%s] ",pcVar16);
                      }
                    }
                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);
                    printf(" %4s ",pcVar16);
                    if ((Filedata *)*strtab < local_d4) {
                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;
                    }
                    else {
                      sym_info = (versioned_symbol_info *)0x5;
                      pcVar16 = (char *)dcgettext(0,"<corrupt>");
                    }
                    vna_other_00 = (ushort *)0x33cb9;
                    print_symbol(0x19,pcVar16);
                    pcVar16 = get_symbol_version_string
                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc
                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,
                                         in_stack_ffffff04);
                    if (pcVar16 != (char *)0x0) {
                      if (nc._0_4_ == 0) {
                        sym_info = (versioned_symbol_info *)(uint)vna_other;
                        printf("@%s (%d)",pcVar16);
                      }
                      else {
                        pcVar22 = "@%s";
                        if (nc._0_4_ != 1) {
                          pcVar22 = "@@%s";
                        }
                        printf(pcVar22,pcVar16);
                      }
                    }
                    putc(10,*(FILE **)puVar10);
                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&
                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),
                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&
                       ((filedata->file_header).e_ident[7] != '\x06')) {
                      pcVar16 = printable_section_name
                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec
                                          );
                      sym_info = (versioned_symbol_info *)0x5;
                      pcVar22 = (char *)dcgettext(0,
                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"
                                                 );
                      warn(pcVar22,uVar15,pcVar16,uVar24);
                    }
                    uVar15 = uVar15 + 1;
                    strtab = strtab + 7;
                  } while (uVar15 < (uint)nb._0_4_);
                }
                free(local_80);
                if (filedata->string_table != local_bc) {
                  free(local_bc);
                }
              }
            }
          }
          local_b0 = local_b0 + 1;
          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;
        } while (local_b0 < (filedata->file_header).e_shnum);
      }
      goto LAB_00033418;
    }
    if (do_syms == 0) goto LAB_00033418;
LAB_000337b9:
    pcVar16 = (char *)dcgettext(0,
                                "\nDynamic symbol information is not available for displaying symbols.\n"
                                ,5);
    printf(pcVar16);
    if (do_histogram == 0) goto LAB_000337f0;
LAB_00033426:
    local_7c = (size_t)eVar31;
    bVar25 = do_histogram;
    if (local_78 != (bfd_vma *)0x0) {
      pcVar16 = (char *)dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",
                                   "\nHistogram for bucket list length (total of %lu buckets):\n",
                                   local_7c,5);
      printf(pcVar16,local_7c);
      puVar21 = (uint *)calloc(local_7c,4);
      if (puVar21 == (uint *)0x0) {
        pcVar16 = "Out of memory allocating space for histogram buckets\n";
        goto LAB_00034166;
      }
      pvVar19 = xcmalloc(local_e0,1);
      memset(pvVar19,0,local_e0);
      pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);
      printf(pcVar16);
      if (eVar31 == 0) {
        free(pvVar19);
        puVar17 = (uint *)calloc(1,4);
        if (puVar17 == (uint *)0x0) goto LAB_00034764;
      }
      else {
        local_c4 = local_78;
        uVar15 = 0;
        uVar24 = 0;
        local_b4 = puVar21;
        do {
          uVar26 = *(uint *)((int)local_c4 + 4);
          if (uVar26 == 0 && (uint)*local_c4 == 0) {
            local_f4 = (bfd_vma *)(uVar15 + 1);
          }
          else {
            uVar27 = *local_b4;
            iVar12 = uVar24 - uVar27;
            uVar20 = (uint)*local_c4;
            do {
              uVar27 = uVar27 + 1;
              uVar24 = iVar12 + uVar27;
              local_f4 = (bfd_vma *)(uVar15 + 1);
              if (uVar15 < uVar27) {
                local_f4 = (bfd_vma *)(uVar15 + 2);
                uVar15 = uVar15 + 1;
              }
              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||
                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {
                *local_b4 = uVar27;
                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);
                error(pcVar16);
                goto LAB_000335a5;
              }
              *(char *)((int)pvVar19 + uVar20) = '\x01';
              pbVar1 = local_cc + uVar20;
              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);
              uVar20 = (uint)*pbVar1;
            } while (uVar26 != 0 || (uint)*pbVar1 != 0);
            *local_b4 = uVar27;
          }
LAB_000335a5:
          local_c4 = local_c4 + 1;
          local_b4 = local_b4 + 1;
        } while (local_78 + local_7c != local_c4);
        free(pvVar19);
        puVar17 = (uint *)calloc((size_t)local_f4,4);
        if (puVar17 == (uint *)0x0) {
LAB_00034764:
          free(puVar21);
          pcVar16 = "Out of memory allocating space for histogram counts\n";
          goto LAB_00034166;
        }
        puVar18 = puVar21;
        do {
          uVar26 = *puVar18;
          puVar18 = puVar18 + 1;
          puVar17[uVar26] = puVar17[uVar26] + 1;
        } while (puVar21 + local_7c != puVar18);
        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;
        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)
              );
        if (uVar15 != 0) {
          uVar27 = 0;
          uVar26 = 1;
          do {
            uVar20 = puVar17[uVar26];
            uVar27 = uVar27 + uVar20 * uVar26;
            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);
            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);
            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),
                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));
            bVar28 = uVar15 != uVar26;
            uVar26 = uVar26 + 1;
          } while (bVar28);
        }
      }
      free(puVar17);
      free(puVar21);
      goto LAB_000337ff;
    }
  }
  else {
    local_e0 = (uint)dynamic_info[4];
    eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);
    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {
      if (do_histogram != 0) {
LAB_00033f90:
        uVar4 = (filedata->file_header).e_machine;
        if ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {
          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;
        }
        wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));
        iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);
        if (iVar12 == 0) {
          in_stack_ffffff00 = (FILE *)filedata->handle;
          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);
          if (sVar23 != 1) {
            pcVar16 = "Failed to read in number of buckets\n";
            goto LAB_00034039;
          }
          in_stack_ffffff00 = (FILE *)filedata->handle;
          in_stack_fffffefc = 1;
          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);
          if (sVar23 != 1) {
            pcVar16 = "Failed to read in number of chains\n";
            goto LAB_00034039;
          }
          eVar31 = (*byte_get)(nb,sVar13);
          sVar23 = sVar13;
          eVar29 = (*byte_get)(nc,sVar13);
          local_e0 = (uint)eVar29;
          local_dc = (uint *)(eVar29 >> 0x20);
          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);
          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);
          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;
        }
        else {
          pcVar16 = "Unable to seek to start of dynamic information\n";
LAB_00034039:
          in_stack_fffffefc = 5;
          pcVar16 = (char *)dcgettext(0,pcVar16);
          error(pcVar16);
          local_cc = (bfd_vma *)0x0;
          local_78 = (bfd_vma *)0x0;
        }
        if (do_using_dynamic != 0) {
          return 0;
        }
        free(local_78);
        free(local_cc);
        local_cc = (bfd_vma *)0x0;
        local_78 = (bfd_vma *)0x0;
        local_e0 = 0;
        local_dc = (uint *)0x0;
        eVar31 = 0;
        goto LAB_0003325f;
      }
      if (do_using_dynamic != 0) {
        if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;
        if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)
        goto LAB_00033382;
        local_78 = (bfd_vma *)0x0;
        local_e0 = 0;
        local_dc = (uint *)0x0;
        local_cc = (bfd_vma *)0x0;
        eVar31 = 0;
LAB_00033293:
        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;
        goto LAB_00032d84;
      }
      if ((uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0) {
        local_78 = (bfd_vma *)0x0;
        local_e0 = 0;
        local_dc = (uint *)0x0;
        local_cc = (bfd_vma *)0x0;
        eVar31 = 0;
        goto LAB_000332bc;
      }
LAB_00033382:
      local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);
      local_8c = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);
      local_e0 = (uint)dynamic_info_DT_GNU_HASH;
      local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;
      eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);
      local_90 = (bfd_vma *)0x0;
      local_6c = (bfd_vma *)0x0;
      local_cc = (bfd_vma *)0x0;
      local_78 = (bfd_vma *)0x0;
      local_54 = local_e0;
      local_50 = (uint)local_dc;
      goto LAB_000333c0;
    }
    local_cc = (bfd_vma *)0x0;
    local_78 = (bfd_vma *)0x0;
LAB_0003325f:
    if (dynamic_info_DT_GNU_HASH._4_4_ == 0 && (uint)dynamic_info_DT_GNU_HASH == 0)
    goto LAB_00033740;
    if (do_histogram == 0) {
      if (do_using_dynamic != 0) goto LAB_00033293;
      goto LAB_000332bc;
    }
LAB_00032d84:
    wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));
    iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);
    if (iVar12 == 0) {
      pFVar32 = (FILE *)filedata->handle;
      uVar33 = 1;
      sVar13 = fread(nc,0x10,1,pFVar32);
      if (sVar13 != 1) {
        pcVar16 = "Failed to read in number of buckets\n";
        goto LAB_00034303;
      }
      eVar29 = (*byte_get)(nc,4);
      eVar30 = (*byte_get)(nc + 4,4);
      (*byte_get)(local_24,4);
      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));
      iVar12 = wVar11 + archive_file_offset;
      uVar33 = 0;
      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);
      local_8c = eVar30;
      if (iVar14 != 0) {
        pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);
        error(pcVar16);
        local_74 = 0;
        local_6c = (bfd_vma *)0x0;
        eVar29 = local_74;
        goto LAB_00034347;
      }
      local_74._0_4_ = (uint)eVar29;
      local_74._4_4_ = (uint)(eVar29 >> 0x20);
      local_6c = get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74);
      if (local_6c == (bfd_vma *)0x0) {
LAB_000346fb:
        local_74 = 0;
        eVar29 = local_74;
        goto LAB_00034347;
      }
      if (local_74._4_4_ == 0 && (uint)local_74 == 0) goto LAB_00034347;
      local_54 = 0;
      local_50 = 0;
      local_ec = (Filedata *)0xffffffff;
      uStack_e8 = 0;
      do {
        uVar15 = (uint)local_6c[local_54];
        uVar24 = *(uint *)((int)(local_6c + local_54) + 4);
        local_8c._0_4_ = (uint)eVar30;
        local_8c._4_4_ = (uint)(eVar30 >> 0x20);
        if (uVar24 != 0 || uVar15 != 0) {
          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))
          {
            return 0;
          }
          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||
             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {
            local_ec = (Filedata *)uVar15;
            uStack_e8 = uVar24;
          }
        }
        bVar28 = 0xfffffffe < local_54;
        local_54 = local_54 + 1;
        local_50 = local_50 + bVar28;
      } while (local_74._4_4_ != local_50 || (uint)local_74 != local_54);
      if (uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff) goto LAB_000346fb;
      uVar15 = (int)local_ec - (uint)local_8c;
      uVar24 = (uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c);
      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));
      iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);
      if (iVar12 != 0) {
LAB_000347ff:
        pcVar16 = "Unable to seek to start of dynamic information\n";
LAB_00033073:
        pcVar16 = (char *)dcgettext(0,pcVar16,5);
        error(pcVar16);
        local_74 = 0;
        eVar29 = local_74;
        goto LAB_00034347;
      }
      do {
        pFVar32 = (FILE *)filedata->handle;
        uVar33 = 1;
        sVar13 = fread(nc,4,1,pFVar32);
        if (sVar13 != 1) {
          pcVar16 = "Failed to determine last chain length\n";
          goto LAB_00033073;
        }
        if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;
        bVar28 = 0xfffffffe < uVar15;
        uVar15 = uVar15 + 1;
        uVar24 = uVar24 + bVar28;
        eVar29 = (*byte_get)(nc,4);
      } while ((eVar29 & 1) == 0);
      local_74 = CONCAT44(uVar24,uVar15);
      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));
      iVar12 = wVar11 + archive_file_offset;
      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);
      if (iVar14 != 0) goto LAB_000347ff;
      local_90 = get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15);
      eVar29 = local_74;
      if (local_90 == (bfd_vma *)0x0) goto LAB_00034347;
    }
    else {
      pcVar16 = "Unable to seek to start of dynamic information\n";
LAB_00034303:
      pcVar16 = (char *)dcgettext(0,pcVar16,5);
      error(pcVar16);
      local_74 = 0;
      local_8c = 0;
      local_6c = (bfd_vma *)0x0;
      eVar29 = local_74;
LAB_00034347:
      local_74 = eVar29;
      free(local_6c);
      if (do_using_dynamic != 0) {
        return 0;
      }
      local_90 = (bfd_vma *)0x0;
      local_6c = (bfd_vma *)0x0;
      local_54 = 0;
      local_50 = 0;
    }
    if ((dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0) ||
        ((uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0)) goto LAB_000333c0;
LAB_0003378f:
    if (do_dyn_syms != 0) goto LAB_00033a30;
    if (do_syms != 0) {
      if (do_using_dynamic != 0) goto LAB_000337b9;
LAB_000341b6:
      local_ec = (Filedata *)filedata->section_headers;
      if (local_ec == (Filedata *)0x0) goto LAB_000337b9;
      goto LAB_00033a43;
    }
LAB_00033418:
    if (do_histogram != 0) goto LAB_00033426;
LAB_000337f0:
    if (local_78 == (bfd_vma *)0x0) {
      return 1;
    }
LAB_000337ff:
    bVar25 = do_histogram;
    free(local_78);
    free(local_cc);
  }
  if (local_6c == (bfd_vma *)0x0) {
    return 1;
  }
  if (bVar25 == 0) {
    return 1;
  }
  pcVar16 = (char *)dcngettext(0,
                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu bucket):\n"
                               ,
                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu buckets):\n"
                               ,local_54,5);
  printf(pcVar16,local_54);
  puVar21 = (uint *)calloc(local_54,4);
  if (puVar21 == (uint *)0x0) {
    pcVar16 = "Out of memory allocating space for gnu histogram buckets\n";
  }
  else {
    pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);
    printf(pcVar16);
    if (local_50 == 0 && local_54 == 0) {
      puVar17 = (uint *)calloc(1,4);
      if (puVar17 != (uint *)0x0) goto LAB_000331cb;
    }
    else {
      local_c4 = (bfd_vma *)0x0;
      local_cc = (bfd_vma *)0x0;
      local_f4 = local_6c;
      local_dc = puVar21;
      do {
        uVar15 = *(uint *)((int)local_f4 + 4);
        uVar24 = (uint)*local_f4;
        if (uVar15 != 0 || uVar24 != 0) {
          uVar26 = uVar24 - (uint)local_8c;
          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);
          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))
          {
            local_58 = 0;
            local_5c = (uint)local_90[uVar26] & 1;
            if (local_5c == 0) {
              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;
              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +
                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +
                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);
              iVar14 = 0;
              uVar24 = 1;
              do {
                bVar28 = 0xfffffffe < uVar24;
                uVar24 = uVar24 + 1;
                iVar14 = iVar14 + (uint)bVar28;
                uVar15 = uVar27;
                local_5c = uVar27;
                local_58 = iVar12;
                if (iVar14 == iVar12 && uVar24 == uVar27) break;
                uVar15 = uVar24;
                local_5c = uVar24;
                local_58 = iVar14;
              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);
            }
            else {
              uVar15 = 1;
            }
          }
          else {
            local_5c = 1;
            local_58 = 0;
            uVar15 = 1;
          }
          *local_dc = uVar15;
          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {
            local_cc = (bfd_vma *)uVar15;
          }
          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);
        }
        local_f4 = local_f4 + 1;
        local_dc = local_dc + 1;
      } while (local_6c + local_54 != local_f4);
      puVar17 = (uint *)calloc((int)local_cc + 1,4);
      if (puVar17 != (uint *)0x0) {
        puVar18 = puVar21;
        do {
          uVar15 = *puVar18;
          puVar18 = puVar18 + 1;
          puVar17[uVar15] = puVar17[uVar15] + 1;
        } while (puVar21 + local_54 != puVar18);
        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;
        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)
              );
        if (local_cc != (bfd_vma *)0x0) {
          uVar24 = 0;
          uVar15 = 1;
          do {
            uVar26 = puVar17[uVar15];
            uVar24 = uVar24 + uVar26 * uVar15;
            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);
            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);
            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),
                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));
            bVar28 = local_cc != (bfd_vma *)uVar15;
            uVar15 = uVar15 + 1;
          } while (bVar28);
        }
LAB_000331cb:
        free(puVar17);
        free(puVar21);
        free(local_6c);
        free(local_90);
        return 1;
      }
    }
    free(puVar21);
    pcVar16 = "Out of memory allocating space for gnu histogram counts\n";
  }
LAB_00034166:
  pcVar16 = (char *)dcgettext(0,pcVar16,5);
  error(pcVar16);
  return 0;
}



undefined4 FUN_00032cd0(void)

{
  undefined4 *puVar1;
  int iVar2;
  double dVar3;
  byte bVar4;
  short sVar5;
  uint uVar6;
  ulonglong uVar7;
  ulonglong uVar8;
  int iVar9;
  int iVar10;
  size_t sVar11;
  uint uVar12;
  uint *puVar13;
  uint *puVar14;
  void *pvVar15;
  uint uVar16;
  char *pcVar17;
  uint *puVar18;
  undefined4 uVar19;
  size_t sVar20;
  uint uVar21;
  uint uVar22;
  char *__format;
  int unaff_EBP;
  uint uVar23;
  uint uVar24;
  bool bVar25;
  longlong lVar26;
  longlong lVar27;
  longlong lVar28;
  longlong lVar29;
  undefined4 uVar30;
  undefined *puVar31;
  undefined4 uVar32;
  uint *local_f4;
  uint local_ec;
  uint uStack_e8;
  uint local_e0;
  uint *local_dc;
  uint local_d4;
  void *local_cc;
  uint *local_c4;
  void *local_bc;
  uint *local_b4;
  uint local_b0;
  void *local_90;
  uint local_8c;
  int local_88;
  void *local_80;
  size_t local_7c;
  uint *local_78;
  uint local_74;
  uint local_70;
  uint *local_6c;
  uint local_5c;
  int local_58;
  uint local_54;
  int local_50;
  ushort local_36;
  uint local_34 [2];
  int local_2c [7];
  
  iVar9 = FUN_0004ab89();
  if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&
      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {
    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {
      return 1;
    }
    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||
        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)
    goto LAB_00033f90;
    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);
    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||
        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {
      local_cc = (void *)0x0;
      local_78 = (uint *)0x0;
      lVar29 = lVar28;
      goto LAB_00032d84;
    }
    local_cc = (void *)0x0;
    local_78 = (uint *)0x0;
    lVar28 = lVar29;
LAB_00033740:
    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
    uVar21 = *puVar18;
    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);
    lVar26 = *(longlong *)puVar18;
    lVar27 = *(longlong *)puVar18;
    if (uVar21 == 0 && iVar10 == 0) {
      local_90 = (void *)0x0;
      local_6c = (uint *)0x0;
      local_54 = uVar21;
      local_50 = iVar10;
      goto LAB_0003378f;
    }
LAB_000332bc:
    lVar27 = 0;
    local_90 = (void *)0x0;
    local_6c = (uint *)0x0;
    local_54 = 0;
    local_50 = 0;
    lVar26 = 0;
LAB_000333c0:
    local_7c = (size_t)lVar28;
    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);
    local_e0 = (uint)lVar29;
    local_70 = (uint)((ulonglong)lVar26 >> 0x20);
    local_74 = (uint)lVar26;
    local_88 = (int)((ulonglong)lVar27 >> 0x20);
    local_8c = (uint)lVar27;
    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)
    goto LAB_0003378f;
    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {
      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||
         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {
        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)
        goto LAB_00033a30;
        goto LAB_000337b9;
      }
      if (iVar10 != 0 || uVar21 != 0) {
        iVar9 = unaff_EBP + 0x48efc;
        uVar32 = 5;
        pcVar17 = (char *)dcgettext();
        printf(pcVar17,iVar9,uVar32);
        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {
          puVar31 = &UNK_00050c3e + unaff_EBP;
          uVar32 = 5;
          pcVar17 = (char *)dcgettext();
          printf(pcVar17,puVar31,uVar32);
        }
        else {
          puVar31 = &UNK_00050c02 + unaff_EBP;
          uVar32 = 5;
          pcVar17 = (char *)dcgettext();
          printf(pcVar17,puVar31,uVar32);
        }
        pvVar15 = (void *)FUN_0005da70();
        memset(pvVar15,0,local_e0);
        if (lVar28 != 0) {
          local_ec = 0;
          do {
            uVar21 = local_78[local_ec * 2];
            uVar12 = local_78[local_ec * 2 + 1];
            if (uVar12 != 0 || uVar21 != 0) {
              do {
                FUN_00032a90();
                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||
                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {
                  dcgettext();
                  error();
                  break;
                }
                *(char *)((int)pvVar15 + uVar21) = '\x01';
                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);
                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);
              } while (uVar12 != 0 || uVar21 != 0);
            }
            local_ec = local_ec + 1;
          } while (local_7c != local_ec);
        }
        free(pvVar15);
      }
      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||
          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {
        puVar31 = &UNK_00050c82 + unaff_EBP;
        uVar32 = 5;
        pcVar17 = (char *)dcgettext();
        printf(pcVar17,puVar31,uVar32);
        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {
          puVar31 = &UNK_00050c3e + unaff_EBP;
          uVar32 = 5;
          pcVar17 = (char *)dcgettext();
          printf(pcVar17,puVar31,uVar32);
        }
        else {
          puVar31 = &UNK_00050c02 + unaff_EBP;
          uVar32 = 5;
          pcVar17 = (char *)dcgettext();
          printf(pcVar17,puVar31,uVar32);
        }
        if (local_50 != 0 || local_54 != 0) {
          uVar21 = 0;
          do {
            uVar23 = local_6c[uVar21 * 2];
            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {
              uVar12 = uVar23 - local_8c;
              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);
              do {
                FUN_00032a90();
                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;
                bVar25 = 0xfffffffe < uVar12;
                uVar12 = uVar12 + 1;
                uVar23 = uVar23 + bVar25;
              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);
            }
            uVar21 = uVar21 + 1;
          } while (local_54 != uVar21);
        }
      }
      goto LAB_00033418;
    }
    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)
    goto LAB_000341b6;
LAB_00033a30:
    local_ec = *(int *)(iVar9 + 0x5c);
    if (local_ec != 0) {
LAB_00033a43:
      if (*(int *)(iVar9 + 0x54) != 0) {
        local_b0 = 0;
        puVar1 = *(undefined4 **)
                  (
                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"
                  + unaff_EBP + 0x6b6);
        do {
          iVar10 = *(int *)(local_ec + 4);
          if (((iVar10 == 2) || (iVar10 == 0xb)) &&
             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||
              (iVar10 != 2)))) {
            iVar10 = *(int *)(local_ec + 0x38);
            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {
              uVar32 = FUN_00022190();
              uVar19 = 5;
              pcVar17 = (char *)dcgettext();
              printf(pcVar17,uVar32,uVar19);
            }
            else {
              uVar32 = *(undefined4 *)(local_ec + 0x24);
              uVar21 = FUN_0006b250();
              local_34[0] = uVar21;
              uVar19 = FUN_00022190();
              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,
                                           local_34[0],5,uVar32,iVar10);
              printf(pcVar17,uVar19,uVar21);
              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {
                puVar31 = &UNK_00050d6e + unaff_EBP;
                uVar21 = 5;
                pcVar17 = (char *)dcgettext();
                printf(pcVar17,puVar31,uVar21);
              }
              else {
                puVar31 = &UNK_00050d32 + unaff_EBP;
                uVar21 = 5;
                pcVar17 = (char *)dcgettext();
                printf(pcVar17,puVar31,uVar21);
              }
              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {
                local_80 = (void *)FUN_00022830();
              }
              else {
                local_80 = (void *)FUN_000222e0();
              }
              if (local_80 != (void *)0x0) {
                uVar23 = *(uint *)(local_ec + 0x28);
                if (uVar23 == *(uint *)(iVar9 + 0x58)) {
                  local_bc = *(void **)(iVar9 + 100);
                  local_d4 = *(uint *)(iVar9 + 0x68);
                }
                else {
                  local_d4 = 0;
                  local_bc = (void *)0x0;
                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {
                    uVar21 = 5;
                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;
                    iVar10 = unaff_EBP + 0x45491;
                    uVar32 = dcgettext();
                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),
                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,
                                                    uVar21);
                    if (local_bc != (void *)0x0) {
                      local_d4 = *(uint *)(iVar2 + 0x20);
                    }
                  }
                }
                if (local_34[0] != 0) {
                  uVar23 = 0;
                  puVar18 = (uint *)((int)local_80 + 0x10);
                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);
                  do {
                    printf(&UNK_00048f32 + unaff_EBP,uVar23);
                    FUN_0001e910();
                    putc(0x20,(FILE *)*puVar1);
                    FUN_0001e910();
                    uVar32 = FUN_00023ff0();
                    printf(pcVar17,uVar32);
                    uVar32 = FUN_00025a40();
                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);
                    if (*(char *)(iVar9 + 0x17) == '\x06') {
                      uVar32 = FUN_00023de0();
                      printf(pcVar17,uVar32);
                    }
                    else {
                      bVar4 = *(byte *)((int)puVar18 + 5);
                      uVar32 = FUN_00023d60();
                      printf(pcVar17,uVar32);
                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {
                        uVar32 = FUN_00032810();
                        printf((char *)(unaff_EBP + 0x48edb),uVar32);
                      }
                    }
                    uVar32 = FUN_00023e70();
                    printf(&UNK_00048f38 + unaff_EBP,uVar32);
                    if (local_d4 <= *puVar18) {
                      uVar21 = 5;
                      dcgettext();
                    }
                    FUN_0001fd20();
                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,
                                          uVar21);
                    if (iVar10 != 0) {
                      if (local_2c[0] == 0) {
                        uVar21 = (uint)local_36;
                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);
                      }
                      else {
                        __format = (char *)(unaff_EBP + 0x48d63);
                        if (local_2c[0] != 1) {
                          __format = (char *)(unaff_EBP + 0x48d62);
                        }
                        printf(__format,iVar10);
                      }
                    }
                    putc(10,(FILE *)*puVar1);
                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&
                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&
                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {
                      uVar32 = FUN_00022190();
                      puVar31 = &UNK_00050db2 + unaff_EBP;
                      uVar21 = 5;
                      uVar30 = 0;
                      uVar19 = dcgettext();
                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);
                    }
                    uVar23 = uVar23 + 1;
                    puVar18 = puVar18 + 7;
                  } while (uVar23 < local_34[0]);
                }
                free(local_80);
                if (*(void **)(iVar9 + 100) != local_bc) {
                  free(local_bc);
                }
              }
            }
          }
          local_b0 = local_b0 + 1;
          local_ec = local_ec + 0x48;
        } while (local_b0 < *(uint *)(iVar9 + 0x54));
      }
      goto LAB_00033418;
    }
    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)
    goto LAB_00033418;
LAB_000337b9:
    puVar31 = &UNK_00050dee + unaff_EBP;
    uVar32 = 5;
    pcVar17 = (char *)dcgettext();
    printf(pcVar17,puVar31,uVar32);
    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);
    if (iVar9 == 0) goto LAB_000337f0;
LAB_00033426:
    local_7c = (size_t)lVar28;
    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);
    local_e0 = (uint)lVar29;
    if (local_78 != (uint *)0x0) {
      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);
      printf(pcVar17,local_7c);
      puVar18 = (uint *)calloc(local_7c,4);
      if (puVar18 == (uint *)0x0) goto LAB_00034166;
      pvVar15 = (void *)FUN_0005da70();
      memset(pvVar15,0,local_e0);
      puVar31 = &UNK_00050ee6 + unaff_EBP;
      uVar32 = 5;
      pcVar17 = (char *)dcgettext();
      printf(pcVar17,puVar31,uVar32);
      if (lVar28 == 0) {
        free(pvVar15);
        puVar13 = (uint *)calloc(1,4);
        if (puVar13 == (uint *)0x0) goto LAB_00034764;
      }
      else {
        local_c4 = local_78;
        uVar23 = 0;
        uVar12 = 0;
        local_b4 = puVar18;
        do {
          uVar24 = local_c4[1];
          if (uVar24 == 0 && *local_c4 == 0) {
            local_f4 = (uint *)(uVar23 + 1);
          }
          else {
            uVar22 = *local_b4;
            iVar9 = uVar12 - uVar22;
            uVar16 = *local_c4;
            do {
              uVar22 = uVar22 + 1;
              uVar12 = iVar9 + uVar22;
              local_f4 = (uint *)(uVar23 + 1);
              if (uVar23 < uVar22) {
                local_f4 = (uint *)(uVar23 + 2);
                uVar23 = uVar23 + 1;
              }
              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||
                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {
                *local_b4 = uVar22;
                dcgettext();
                error();
                goto LAB_000335a5;
              }
              *(char *)((int)pvVar15 + uVar16) = '\x01';
              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);
              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);
              uVar16 = uVar6;
            } while (uVar24 != 0 || uVar6 != 0);
            *local_b4 = uVar22;
          }
LAB_000335a5:
          local_c4 = local_c4 + 2;
          local_b4 = local_b4 + 1;
        } while (local_78 + local_7c * 2 != local_c4);
        free(pvVar15);
        puVar13 = (uint *)calloc((size_t)local_f4,4);
        if (puVar13 == (uint *)0x0) {
LAB_00034764:
          free(puVar18);
          goto LAB_00034166;
        }
        puVar14 = puVar18;
        do {
          uVar21 = *puVar14;
          puVar14 = puVar14 + 1;
          puVar13[uVar21] = puVar13[uVar21] + 1;
        } while (puVar18 + local_7c != puVar14);
        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /
                (double)(int)local_7c;
        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)
              );
        if (uVar23 != 0) {
          uVar24 = 0;
          uVar21 = 1;
          do {
            uVar22 = puVar13[uVar21];
            uVar24 = uVar24 + uVar22 * uVar21;
            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12
                            );
            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,
                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /
                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));
            bVar25 = uVar23 != uVar21;
            uVar21 = uVar21 + 1;
          } while (bVar25);
        }
      }
      free(puVar13);
      free(puVar18);
      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);
      goto LAB_000337ff;
    }
  }
  else {
    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);
    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
    if (iVar10 != 0 || uVar21 != 0) {
      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {
LAB_00033f90:
        sVar5 = *(short *)(iVar9 + 0x42);
        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {
          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;
        }
        iVar10 = FUN_00026dc0();
        iVar10 = fseek(*(FILE **)(iVar9 + 4),
                       iVar10 + *(int *)("  Version:                           0x%lx\n" +
                                        unaff_EBP + 0x26),0);
        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)
            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {
          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();
          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();
          local_78 = (uint *)FUN_0001e0f0();
          local_cc = (void *)FUN_0001e0f0();
          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;
        }
        else {
          dcgettext();
          error();
          local_cc = (void *)0x0;
          local_78 = (uint *)0x0;
        }
        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {
          return 0;
        }
        free(local_78);
        free(local_cc);
        local_cc = (void *)0x0;
        local_78 = (uint *)0x0;
        lVar28 = 0;
        lVar29 = 0;
        goto LAB_0003325f;
      }
      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {
        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)
           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))
        goto LAB_00033f90;
        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);
        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);
        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;
        local_78 = (uint *)0x0;
        lVar29 = 0;
        local_cc = (void *)0x0;
        lVar28 = 0;
LAB_00033293:
        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)
           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))
        goto LAB_000332b0;
        goto LAB_00032d84;
      }
      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);
      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);
      if (local_54 != 0 || local_50 != 0) {
        local_78 = (uint *)0x0;
        lVar29 = 0;
        local_cc = (void *)0x0;
        lVar28 = 0;
        goto LAB_000332bc;
      }
LAB_00033382:
      lVar27 = CONCAT44(local_50,local_54);
      local_90 = (void *)0x0;
      local_6c = (uint *)0x0;
      local_cc = (void *)0x0;
      local_78 = (uint *)0x0;
      lVar26 = lVar27;
      lVar29 = lVar27;
      lVar28 = lVar27;
      goto LAB_000333c0;
    }
    local_cc = (void *)0x0;
    local_78 = (uint *)0x0;
    lVar29 = lVar28;
LAB_0003325f:
    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&
        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)
    goto LAB_00033740;
    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {
      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)
      goto LAB_00033293;
LAB_000332b0:
      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);
      goto LAB_000332bc;
    }
LAB_00032d84:
    iVar10 = FUN_00026dc0();
    iVar10 = fseek(*(FILE **)(iVar9 + 4),
                   iVar10 + *(int *)("  Version:                           0x%lx\n" +
                                    unaff_EBP + 0x26),0);
    if (iVar10 == 0) {
      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));
      if (sVar11 != 1) goto LAB_00034303;
      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);
      lVar26 = (*(code *)*puVar1)();
      lVar27 = (*(code *)*puVar1)();
      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);
      uVar21 = (uint)lVar27;
      (*(code *)*puVar1)();
      iVar10 = FUN_00026dc0();
      iVar10 = fseek(*(FILE **)(iVar9 + 4),
                     iVar10 + *(int *)("  Version:                           0x%lx\n" +
                                      unaff_EBP + 0x26),0);
      if (iVar10 != 0) {
        dcgettext();
        error();
        lVar26 = 0;
        local_6c = (uint *)0x0;
        goto LAB_00034347;
      }
      local_6c = (uint *)FUN_0001e0f0();
      if (local_6c == (uint *)0x0) {
LAB_000346fb:
        lVar26 = 0;
        goto LAB_00034347;
      }
      if (lVar26 == 0) goto LAB_00034347;
      local_54 = 0;
      local_50 = 0;
      local_ec = 0xffffffff;
      uStack_e8 = 0;
      do {
        uVar12 = local_6c[local_54 * 2];
        uVar24 = (local_6c + local_54 * 2)[1];
        if (uVar24 != 0 || uVar12 != 0) {
          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {
            return 0;
          }
          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||
             (local_ec == 0xffffffff && uStack_e8 == 0)) {
            local_ec = uVar12;
            uStack_e8 = uVar24;
          }
        }
        bVar25 = 0xfffffffe < local_54;
        local_54 = local_54 + 1;
        local_50 = local_50 + (uint)bVar25;
      } while (lVar26 != CONCAT44(local_50,local_54));
      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;
      uVar12 = local_ec - uVar21;
      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);
      iVar10 = FUN_00026dc0();
      iVar10 = fseek(*(FILE **)(iVar9 + 4),
                     iVar10 + *(int *)("  Version:                           0x%lx\n" +
                                      unaff_EBP + 0x26),0);
      if (iVar10 != 0) {
LAB_00033073:
        dcgettext();
        error();
        lVar26 = 0;
        goto LAB_00034347;
      }
      do {
        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));
        if (sVar11 != 1) goto LAB_00033073;
        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;
        bVar25 = 0xfffffffe < uVar12;
        uVar12 = uVar12 + 1;
        uVar21 = uVar21 + bVar25;
        lVar26 = CONCAT44(uVar21,uVar12);
        uVar23 = (*(code *)*puVar1)();
      } while ((uVar23 & 1) == 0);
      iVar10 = FUN_00026dc0();
      iVar10 = fseek(*(FILE **)(iVar9 + 4),
                     iVar10 + *(int *)("  Version:                           0x%lx\n" +
                                      unaff_EBP + 0x26),0);
      if (iVar10 != 0) goto LAB_00033073;
      local_90 = (void *)FUN_0001e0f0();
      if (local_90 == (void *)0x0) goto LAB_00034347;
    }
    else {
LAB_00034303:
      dcgettext();
      error();
      lVar26 = 0;
      lVar27 = 0;
      local_6c = (uint *)0x0;
LAB_00034347:
      free(local_6c);
      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {
        return 0;
      }
      local_90 = (void *)0x0;
      local_6c = (uint *)0x0;
      local_54 = 0;
      local_50 = 0;
    }
    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);
    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||
        iVar10 != 0) ||
        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||
        uVar21 != 0)) goto LAB_000333c0;
LAB_0003378f:
    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)
    goto LAB_00033a30;
    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {
      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)
      goto LAB_000337b9;
LAB_000341b6:
      local_ec = *(int *)(iVar9 + 0x5c);
      if (local_ec == 0) goto LAB_000337b9;
      goto LAB_00033a43;
    }
LAB_00033418:
    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);
    if (iVar9 != 0) goto LAB_00033426;
LAB_000337f0:
    if (local_78 == (uint *)0x0) {
      return 1;
    }
LAB_000337ff:
    free(local_78);
    free(local_cc);
  }
  local_70 = (uint)((ulonglong)lVar26 >> 0x20);
  local_74 = (uint)lVar26;
  local_88 = (int)((ulonglong)lVar27 >> 0x20);
  local_8c = (uint)lVar27;
  if (local_6c == (uint *)0x0) {
    return 1;
  }
  if (iVar9 == 0) {
    return 1;
  }
  pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);
  printf(pcVar17,local_54);
  puVar18 = (uint *)calloc(local_54,4);
  if (puVar18 != (uint *)0x0) {
    puVar31 = &UNK_00050ee6 + unaff_EBP;
    uVar32 = 5;
    pcVar17 = (char *)dcgettext();
    printf(pcVar17,puVar31,uVar32);
    if (local_50 == 0 && local_54 == 0) {
      puVar13 = (uint *)calloc(1,4);
      if (puVar13 != (uint *)0x0) goto LAB_000331cb;
    }
    else {
      local_c4 = (uint *)0x0;
      local_cc = (void *)0x0;
      local_f4 = local_6c;
      local_dc = puVar18;
      do {
        uVar21 = *local_f4;
        if (local_f4[1] != 0 || uVar21 != 0) {
          uVar23 = uVar21 - local_8c;
          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);
          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {
            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;
            if (uVar12 == 0) {
              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;
              iVar9 = 0;
              uVar12 = 1;
              do {
                bVar25 = 0xfffffffe < uVar12;
                uVar12 = uVar12 + 1;
                iVar9 = iVar9 + (uint)bVar25;
                uVar21 = (uint)uVar7;
                uVar8 = uVar7;
                if (uVar7 == CONCAT44(iVar9,uVar12)) break;
                uVar21 = uVar12;
                uVar8 = CONCAT44(iVar9,uVar12);
              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);
            }
            else {
              uVar21 = 1;
              uVar8 = (ulonglong)uVar12;
            }
          }
          else {
            uVar21 = 1;
            uVar8 = 1;
          }
          local_58 = (int)(uVar8 >> 0x20);
          local_5c = (uint)uVar8;
          *local_dc = uVar21;
          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {
            local_cc = (void *)uVar21;
          }
          local_c4 = (uint *)((int)local_c4 + uVar21);
        }
        local_f4 = local_f4 + 2;
        local_dc = local_dc + 1;
      } while (local_6c + local_54 * 2 != local_f4);
      puVar13 = (uint *)calloc((int)local_cc + 1,4);
      if (puVar13 != (uint *)0x0) {
        puVar14 = puVar18;
        do {
          uVar21 = *puVar14;
          puVar14 = puVar14 + 1;
          puVar13[uVar21] = puVar13[uVar21] + 1;
        } while (puVar18 + local_54 != puVar14);
        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /
                (double)(int)local_54;
        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)
              );
        if (local_cc != (void *)0x0) {
          uVar23 = 0;
          uVar21 = 1;
          do {
            uVar12 = puVar13[uVar21];
            uVar23 = uVar23 + uVar12 * uVar21;
            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /
                            (float)local_c4);
            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,
                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /
                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));
            bVar25 = local_cc != (void *)uVar21;
            uVar21 = uVar21 + 1;
          } while (bVar25);
        }
LAB_000331cb:
        free(puVar13);
        free(puVar18);
        free(local_6c);
        free(local_90);
        return 1;
      }
    }
    free(puVar18);
  }
LAB_00034166:
  dcgettext();
  error();
  return 0;
}


PUSH EBP
CALL 0x0004ab89
ADD EBP,0x8132a
PUSH EDI
PUSH ESI
PUSH EBX
SUB ESP,0xec
MOV ECX,dword ptr [EBP + 0x2364]
MOV dword ptr [ESP + 0x8],EAX
MOV EAX,ECX
OR EAX,dword ptr [EBP + 0x2368]
JNZ 0x00033210
MOV EDI,dword ptr [EBP + 0x2338]
TEST EDI,EDI
JZ 0x000331fa
MOV EAX,dword ptr [EBP + 0x2440]
MOV EDI,dword ptr [EBP + 0x2444]
MOV dword ptr [ESP + 0xb0],EDI
OR EDI,EAX
MOV dword ptr [ESP + 0x80],EAX
JNZ 0x00033f90
MOV EDI,dword ptr [EBP + 0x2404]
MOV EAX,dword ptr [EBP + 0x2400]
MOV ESI,EDI
MOV dword ptr [ESP + 0x1c],EAX
OR ESI,EAX
MOV dword ptr [ESP + 0x20],EDI
JZ 0x0003371e
MOV EAX,dword ptr [ESP + 0x1c]
MOV dword ptr [ESP + 0x30],0x0
MOV dword ptr [ESP + 0x84],0x0
MOV dword ptr [ESP + 0x70],EAX
MOV EAX,dword ptr [ESP + 0x20]
MOV dword ptr [ESP + 0x74],EAX
MOV EAX,dword ptr [ESP + 0x80]
MOV dword ptr [ESP + 0x1c],EAX
MOV EAX,dword ptr [ESP + 0xb0]
MOV dword ptr [ESP + 0x20],EAX
SUB ESP,0x8
MOV EBX,EBP
PUSH 0x0
PUSH 0x10
MOV EDI,dword ptr [ESP + 0x18]
MOV EDX,dword ptr [ESP + 0x80]
MOV ECX,dword ptr [ESP + 0x84]
MOV EAX,EDI
CALL 0x00026dc0
ADD ESP,0xc
ADD EAX,dword ptr [EBP + 0x3550]
PUSH 0x0
PUSH EAX
PUSH dword ptr [EDI + 0x4]
CALL 0x00013130
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000342f8
MOV EAX,dword ptr [ESP + 0x8]
PUSH dword ptr [EAX + 0x4]
PUSH 0x1
PUSH 0x10
LEA EAX,[ESP + 0xdc]
MOV dword ptr [ESP + 0x34],EAX
PUSH EAX
CALL 0x00013180
ADD ESP,0x10
CMP EAX,0x1
JNZ 0x00034554
LEA EDI,[EBP + 0x5dd4]
SUB ESP,0x8
MOV dword ptr [ESP + 0x3c],EDI
PUSH 0x4
PUSH dword ptr [ESP + 0x34]
CALL dword ptr [EDI]
MOV dword ptr [ESP + 0x98],EAX
MOV dword ptr [ESP + 0x9c],EDX
POP EAX
POP EDX
PUSH 0x4
LEA EAX,[ESP + 0xe0]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESP + 0x80],EAX
MOV dword ptr [ESP + 0x84],EDX
POP ECX
POP EBX
PUSH 0x4
LEA EAX,[ESP + 0xe4]
PUSH EAX
CALL dword ptr [EDI]
MOV ECX,dword ptr [EBP + 0x2400]
MOV EBX,dword ptr [EBP + 0x2404]
MOV ESI,dword ptr [EBP + 0x2324]
ADD ECX,0x10
ADC EBX,0x0
ADD ESP,0x10
TEST ESI,ESI
JNZ 0x0003440a
SHLD EDX,EAX,0x3
SHL EAX,0x3
ADD EAX,ECX
ADC EDX,EBX
MOV dword ptr [ESP + 0x38],EAX
MOV dword ptr [ESP + 0x3c],EDX
SUB ESP,0x8
MOV EBX,EBP
PUSH 0x0
PUSH 0x4
MOV EDI,dword ptr [ESP + 0x18]
MOV EDX,dword ptr [ESP + 0x48]
MOV ECX,dword ptr [ESP + 0x4c]
MOV EAX,EDI
CALL 0x00026dc0
ADD ESP,0xc
ADD EAX,dword ptr [EBP + 0x3550]
PUSH 0x0
PUSH EAX
PUSH dword ptr [EDI + 0x4]
CALL 0x00013130
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00034564
SUB ESP,0xc
PUSH 0x4
MOV EBX,dword ptr [ESP + 0x98]
MOV ESI,dword ptr [ESP + 0x9c]
MOV EAX,dword ptr [ESP + 0x18]
MOV EDX,EBX
MOV ECX,ESI
CALL 0x0001e0f0
MOV dword ptr [ESP + 0xa0],EAX
ADD ESP,0x10
TEST EAX,EAX
JZ 0x000346fb
MOV EDX,ESI
OR EDX,EBX
JZ 0x00034347
MOV ESI,0xffffffff
XOR EDI,EDI
XOR ECX,ECX
XOR EBX,EBX
MOV dword ptr [ESP + 0x10],ESI
MOV dword ptr [ESP + 0x14],EDI
LEA ESI,[ESI]
LEA EAX,[ECX*0x8 + 0x0]
ADD EAX,dword ptr [ESP + 0x90]
MOV EDX,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x4]
MOV EDI,EAX
OR EDI,EDX
JZ 0x00032f4d
CMP EDX,dword ptr [ESP + 0x70]
MOV EDI,EAX
SBB EDI,dword ptr [ESP + 0x74]
JC 0x00034179
MOV ESI,dword ptr [ESP + 0x10]
MOV EDI,dword ptr [ESP + 0x14]
CMP ESI,EDX
SBB EDI,EAX
JC 0x00032f45
MOV EDI,dword ptr [ESP + 0x10]
MOV ESI,dword ptr [ESP + 0x14]
NOT EDI
OR EDI,ESI
JNZ 0x00032f4d
MOV dword ptr [ESP + 0x10],EDX
MOV dword ptr [ESP + 0x14],EAX
MOV ESI,dword ptr [ESP + 0x88]
MOV EDI,dword ptr [ESP + 0x8c]
ADD ECX,0x1
ADC EBX,0x0
MOV EAX,ESI
MOV EDX,EDI
XOR EAX,ECX
XOR EDX,EBX
OR EDX,EAX
JNZ 0x00032f00
MOV ESI,dword ptr [ESP + 0x10]
MOV EDI,dword ptr [ESP + 0x14]
MOV dword ptr [ESP + 0xa8],ECX
MOV dword ptr [ESP + 0xac],EBX
MOV EAX,ESI
MOV EDX,EDI
NOT EAX
OR EDX,EAX
JZ 0x000346fb
MOV EAX,ESI
SUB EAX,dword ptr [ESP + 0x70]
MOV EDX,EDI
SBB EDX,dword ptr [ESP + 0x74]
ADD ECX,EAX
MOV dword ptr [ESP + 0x88],EAX
ADC EBX,EDX
MOV ESI,ECX
MOV dword ptr [ESP + 0x8c],EDX
MOV EDI,EBX
SHL ESI,0x2
MOV EBX,EBP
SHLD EDI,ECX,0x2
MOV EDX,ESI
ADD EDX,dword ptr [ESP + 0x38]
MOV ECX,EDI
ADC ECX,dword ptr [ESP + 0x3c]
SUB ESP,0x8
PUSH 0x0
PUSH 0x4
MOV EDI,dword ptr [ESP + 0x18]
MOV EAX,EDI
CALL 0x00026dc0
ADD ESP,0xc
ADD EAX,dword ptr [EBP + 0x3550]
PUSH 0x0
PUSH EAX
PUSH dword ptr [EDI + 0x4]
CALL 0x00013130
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000347ff
MOV EDI,dword ptr [ESP + 0x88]
MOV ESI,dword ptr [ESP + 0x28]
MOV dword ptr [ESP + 0x10],EBP
MOV EBP,dword ptr [ESP + 0x8c]
JMP 0x00033042
MOV EAX,EBP
AND EAX,EDI
CMP EAX,-0x1
JZ 0x000346f7
ADD EDI,0x1
ADC EBP,0x0
SUB ESP,0x8
PUSH 0x4
PUSH ESI
MOV EAX,dword ptr [ESP + 0x44]
CALL dword ptr [EAX]
ADD ESP,0x10
TEST AL,0x1
JNZ 0x00034812
MOV EAX,dword ptr [ESP + 0x8]
PUSH dword ptr [EAX + 0x4]
PUSH 0x1
PUSH 0x4
PUSH ESI
MOV EBX,dword ptr [ESP + 0x20]
CALL 0x00013180
ADD ESP,0x10
CMP EAX,0x1
JZ 0x00033018
MOV EBP,dword ptr [ESP + 0x10]
SUB ESP,0x4
PUSH 0x5
LEA EAX,[EBP + 0xfffcf8b0]
MOV EBX,EBP
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x000666b0
ADD ESP,0x10
MOV dword ptr [ESP + 0x88],0x0
MOV dword ptr [ESP + 0x8c],0x0
JMP 0x00034347
SUB ESP,0x8
MOV EBX,EBP
PUSH 0x4
MOV EAX,dword ptr [ESP + 0x3c]
ADD EAX,0x1
PUSH EAX
CALL 0x00013430
ADD ESP,0x10
MOV ESI,EAX
TEST EAX,EAX
JZ 0x0003479b
MOV EAX,dword ptr [ESP + 0x34]
MOV EDI,dword ptr [ESP + 0x48]
LEA EDX,[EAX + EDI*0x4]
MOV EAX,dword ptr [ESP + 0x4c]
MOV ECX,dword ptr [EAX]
ADD EAX,0x4
ADD dword ptr [ESI + ECX*0x4],0x1
CMP EDX,EAX
JNZ 0x000330d0
FILD dword ptr [ESP + 0xa8]
MOV EAX,dword ptr [ESI]
SUB ESP,0x8
MOV EBX,EBP
MOV dword ptr [ESP + 0x14],0x0
MOV dword ptr [ESP + 0x10],EAX
FST qword ptr [ESP + 0x28]
FILD qword ptr [ESP + 0x10]
FMUL dword ptr [EBP + 0xfffda498]
FDIVRP
FSTP qword ptr [ESP]
PUSH EAX
LEA EAX,[EBP + 0xfffc7c1d]
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
MOV EDI,dword ptr [ESP + 0x30]
TEST EDI,EDI
JZ 0x000331cb
MOV EAX,dword ptr [ESP + 0x38]
MOV EDI,0x1
XOR ECX,ECX
MOV dword ptr [ESP + 0x1c],ESI
MOV dword ptr [ESP + 0xc],0x0
MOV ESI,EDI
MOV EDI,ECX
MOV dword ptr [ESP + 0x8],EAX
FILD qword ptr [ESP + 0x8]
LEA EAX,[EBP + 0xfffcfc20]
MOV dword ptr [ESP + 0x8],EAX
FSTP qword ptr [ESP + 0x28]
JMP 0x00033162
MOV ESI,EAX
MOV EAX,dword ptr [ESP + 0x1c]
SUB ESP,0x14
MOV dword ptr [ESP + 0x28],0x0
MOV EAX,dword ptr [EAX + ESI*0x4]
MOV EBX,EAX
IMUL EBX,ESI
ADD EDI,EBX
MOV EBX,EBP
MOV dword ptr [ESP + 0x24],EDI
FILD qword ptr [ESP + 0x24]
FLD dword ptr [EBP + 0xfffda498]
MOV dword ptr [ESP + 0x24],EAX
MOV dword ptr [ESP + 0x28],0x0
FMUL ST1
FXCH
FDIV qword ptr [ESP + 0x3c]
FSTP qword ptr [ESP + 0x8]
FILD qword ptr [ESP + 0x24]
FMULP
FDIV qword ptr [ESP + 0x34]
FSTP qword ptr [ESP]
PUSH EAX
PUSH ESI
PUSH dword ptr [ESP + 0x24]
CALL 0x00013060
ADD ESP,0x20
LEA EAX,[ESI + 0x1]
CMP dword ptr [ESP + 0x30],ESI
JNZ 0x00033160
MOV ESI,dword ptr [ESP + 0x1c]
SUB ESP,0xc
MOV EBX,EBP
PUSH ESI
CALL 0x000130a0
POP EBP
PUSH dword ptr [ESP + 0x40]
CALL 0x000130a0
POP EAX
PUSH dword ptr [ESP + 0x9c]
CALL 0x000130a0
POP EAX
PUSH dword ptr [ESP + 0x78]
CALL 0x000130a0
ADD ESP,0x10
ADD ESP,0xec
MOV EAX,0x1
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EDI,dword ptr [EBP + 0x2440]
MOV EBX,dword ptr [EBP + 0x2444]
MOV dword ptr [ESP + 0xb0],EBX
MOV EAX,EBX
OR EBX,EDI
MOV EDX,EDI
MOV dword ptr [ESP + 0x80],EDI
JNZ 0x00033310
MOV EAX,dword ptr [ESP + 0x80]
MOV dword ptr [ESP + 0x30],0x0
MOV dword ptr [ESP + 0x84],0x0
MOV dword ptr [ESP + 0x1c],EAX
MOV EAX,dword ptr [ESP + 0xb0]
MOV dword ptr [ESP + 0x20],EAX
MOV EAX,dword ptr [EBP + 0x2400]
MOV EDX,dword ptr [EBP + 0x2404]
MOV dword ptr [ESP + 0x74],EDX
OR EDX,EAX
MOV dword ptr [ESP + 0x70],EAX
JZ 0x00033740
MOV EAX,dword ptr [EBP + 0x2338]
TEST EAX,EAX
JNZ 0x00032d84
MOV EAX,dword ptr [EBP + 0x2348]
TEST EAX,EAX
JZ 0x000332b0
MOV EAX,dword ptr [EBP + 0x2364]
TEST EAX,EAX
JNZ 0x000332b0
MOV EDI,dword ptr [EBP + 0x3538]
TEST EDI,EDI
JNZ 0x00032d84
LEA ESI,[ESI]
NOP
MOV EDX,dword ptr [EBP + 0x2440]
MOV EAX,dword ptr [EBP + 0x2444]
MOV dword ptr [ESP + 0x88],0x0
MOV dword ptr [ESP + 0x8c],0x0
MOV dword ptr [ESP + 0x70],0x0
MOV dword ptr [ESP + 0x74],0x0
MOV dword ptr [ESP + 0x6c],0x0
MOV dword ptr [ESP + 0x90],0x0
MOV dword ptr [ESP + 0xa8],0x0
MOV dword ptr [ESP + 0xac],0x0
JMP 0x000333c0
MOV ESI,dword ptr [EBP + 0x2338]
TEST ESI,ESI
JNZ 0x00033f90
MOV EBX,dword ptr [EBP + 0x2348]
TEST EBX,EBX
JNZ 0x00033f72
MOV ESI,dword ptr [EBP + 0x2400]
MOV EDI,dword ptr [EBP + 0x2404]
MOV EBX,ESI
MOV dword ptr [ESP + 0x70],ESI
MOV ECX,EDI
OR EBX,EDI
MOV dword ptr [ESP + 0x74],EDI
JNZ 0x000343c0
MOV EBX,ESI
MOV EDX,dword ptr [ESP + 0x80]
MOV EAX,dword ptr [ESP + 0xb0]
MOV dword ptr [ESP + 0x8c],EDI
MOV dword ptr [ESP + 0x88],EBX
MOV dword ptr [ESP + 0xa8],EBX
MOV dword ptr [ESP + 0x1c],EBX
MOV dword ptr [ESP + 0xac],EDI
MOV dword ptr [ESP + 0x20],EDI
MOV EDI,EBX
MOV dword ptr [ESP + 0x80],EDI
MOV dword ptr [ESP + 0xb0],ECX
MOV dword ptr [ESP + 0x6c],0x0
MOV dword ptr [ESP + 0x90],0x0
MOV dword ptr [ESP + 0x30],0x0
MOV dword ptr [ESP + 0x84],0x0
LEA ESI,[ESI]
LEA ESI,[ESI]
MOV EDI,dword ptr [EBP + 0x2368]
TEST EDI,EDI
JZ 0x0003378f
MOV ESI,dword ptr [EBP + 0x2348]
TEST ESI,ESI
JZ 0x000341a8
MOV EBX,dword ptr [EBP + 0x3538]
TEST EBX,EBX
JZ 0x00033a1b
MOV ECX,dword ptr [EBP + 0x352c]
TEST ECX,ECX
JZ 0x00033a1b
OR EAX,EDX
JNZ 0x000345b8
MOV EAX,dword ptr [EBP + 0x2404]
OR EAX,dword ptr [EBP + 0x2400]
JNZ 0x0003445f
LEA ESI,[ESI]
MOV ESI,dword ptr [EBP + 0x2338]
TEST ESI,ESI
JZ 0x000337f0
MOV EDI,dword ptr [ESP + 0x84]
TEST EDI,EDI
JZ 0x0003381d
SUB ESP,0xc
LEA EAX,[EBP + 0xfffcfb0c]
MOV EBX,EBP
PUSH 0x5
MOV EDI,dword ptr [ESP + 0x90]
PUSH EDI
PUSH EAX
LEA EAX,[EBP + 0xfffcfb48]
PUSH EAX
PUSH 0x0
CALL 0x00013410
ADD ESP,0x18
PUSH EDI
PUSH EAX
CALL 0x00013060
POP ECX
POP ESI
PUSH 0x4
PUSH EDI
CALL 0x00013430
MOV dword ptr [ESP + 0x60],EAX
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0003415b
SUB ESP,0x8
PUSH 0x1
MOV EDI,dword ptr [ESP + 0x28]
PUSH EDI
CALL 0x0005da70
MOV dword ptr [ESP + 0x44],EAX
ADD ESP,0xc
PUSH EDI
PUSH 0x0
PUSH EAX
CALL 0x000132b0
ADD ESP,0xc
LEA EAX,[EBP + 0xfffcfbbc]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
MOV EDI,dword ptr [ESP + 0xb0]
MOV EAX,dword ptr [ESP + 0x80]
OR EDI,EAX
JZ 0x00034740
MOV EDI,dword ptr [ESP + 0x84]
MOV ESI,dword ptr [ESP + 0x50]
LEA EAX,[EDI + EAX*0x8]
MOV dword ptr [ESP + 0x38],EDI
XOR EDI,EDI
MOV dword ptr [ESP + 0x40],EAX
LEA EAX,[EBP + 0xfffc7bec]
MOV dword ptr [ESP + 0x4c],EAX
MOV dword ptr [ESP + 0x48],ESI
XOR ESI,ESI
LEA ESI,[ESI]
NOP
MOV EBX,dword ptr [ESP + 0x38]
MOV ECX,dword ptr [EBX + 0x4]
MOV EAX,dword ptr [EBX]
MOV EBX,ECX
OR EBX,EAX
JZ 0x000343fe
MOV EBX,dword ptr [ESP + 0x48]
MOV EBX,dword ptr [EBX]
SUB ESI,EBX
LEA EDX,[EBX + 0x1]
MOV dword ptr [ESP + 0x10],ESI
JMP 0x00033558
MOV ECX,dword ptr [ESP + 0x34]
MOV ESI,EAX
ADD ECX,EAX
CMP byte ptr [ECX],0x0
JNZ 0x0003357a
MOV byte ptr [ECX],0x1
MOV ECX,dword ptr [ESP + 0x30]
MOV EAX,dword ptr [ECX + EAX*0x8]
MOV ECX,dword ptr [ECX + ESI*0x8 + 0x4]
LEA ESI,[EDX + 0x1]
MOV dword ptr [ESP + 0x8],ESI
MOV ESI,ECX
OR ESI,EAX
JZ 0x00034148
MOV EDX,dword ptr [ESP + 0x8]
MOV EBX,dword ptr [ESP + 0x10]
ADD EBX,EDX
MOV dword ptr [ESP + 0x28],EBX
LEA EBX,[EDI + 0x1]
CMP EDX,EDI
JBE 0x00033570
LEA ESI,[EDI + 0x2]
MOV EDI,EBX
MOV EBX,ESI
CMP EAX,dword ptr [ESP + 0x1c]
SBB ECX,dword ptr [ESP + 0x20]
JC 0x00033528
MOV EAX,dword ptr [ESP + 0x48]
MOV dword ptr [ESP + 0x8],EBX
SUB ESP,0x4
MOV EBX,EBP
MOV dword ptr [EAX],EDX
PUSH 0x5
PUSH dword ptr [ESP + 0x54]
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x000666b0
ADD ESP,0x10
MOV ESI,dword ptr [ESP + 0x28]
ADD dword ptr [ESP + 0x38],0x8
MOV EAX,dword ptr [ESP + 0x38]
ADD dword ptr [ESP + 0x48],0x4
CMP dword ptr [ESP + 0x40],EAX
JNZ 0x00033500
MOV dword ptr [ESP + 0x10],ESI
MOV ESI,dword ptr [ESP + 0x8]
SUB ESP,0xc
MOV EBX,EBP
PUSH dword ptr [ESP + 0x40]
CALL 0x000130a0
POP EAX
POP EDX
PUSH 0x4
PUSH ESI
CALL 0x00013430
ADD ESP,0x10
MOV ESI,EAX
TEST EAX,EAX
JZ 0x00034764
MOV EDX,dword ptr [ESP + 0x50]
MOV EBX,dword ptr [ESP + 0x80]
MOV EAX,EDX
LEA ECX,[EDX + EBX*0x4]
LEA ESI,[ESI]
MOV EDX,dword ptr [EAX]
ADD EAX,0x4
ADD dword ptr [ESI + EDX*0x4],0x1
CMP ECX,EAX
JNZ 0x00033600
FILD dword ptr [ESP + 0x80]
MOV EAX,dword ptr [ESI]
SUB ESP,0x8
MOV EBX,EBP
MOV dword ptr [ESP + 0x14],0x0
MOV dword ptr [ESP + 0x10],EAX
FST qword ptr [ESP + 0x28]
FILD qword ptr [ESP + 0x10]
FMUL dword ptr [EBP + 0xfffda498]
FDIVRP
FSTP qword ptr [ESP]
PUSH EAX
LEA EAX,[EBP + 0xfffc7c1d]
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
TEST EDI,EDI
JZ 0x000336fb
MOV EAX,dword ptr [ESP + 0x10]
MOV ECX,0x1
XOR EDX,EDX
MOV dword ptr [ESP + 0x1c],ESI
MOV dword ptr [ESP + 0xc],0x0
MOV ESI,ECX
MOV dword ptr [ESP + 0x8],EAX
FILD qword ptr [ESP + 0x8]
LEA EAX,[EBP + 0xfffcfc20]
MOV dword ptr [ESP + 0x34],EDI
MOV EDI,EDX
MOV dword ptr [ESP + 0x8],EAX
FSTP qword ptr [ESP + 0x28]
JMP 0x00033692
MOV ESI,EAX
MOV EAX,dword ptr [ESP + 0x1c]
SUB ESP,0x14
MOV dword ptr [ESP + 0x28],0x0
MOV EAX,dword ptr [EAX + ESI*0x4]
MOV EBX,EAX
IMUL EBX,ESI
ADD EDI,EBX
MOV EBX,EBP
MOV dword ptr [ESP + 0x24],EDI
FILD qword ptr [ESP + 0x24]
FLD dword ptr [EBP + 0xfffda498]
MOV dword ptr [ESP + 0x24],EAX
MOV dword ptr [ESP + 0x28],0x0
FMUL ST1
FXCH
FDIV qword ptr [ESP + 0x3c]
FSTP qword ptr [ESP + 0x8]
FILD qword ptr [ESP + 0x24]
FMULP
FDIV qword ptr [ESP + 0x34]
FSTP qword ptr [ESP]
PUSH EAX
PUSH ESI
PUSH dword ptr [ESP + 0x24]
CALL 0x00013060
ADD ESP,0x20
LEA EAX,[ESI + 0x1]
CMP dword ptr [ESP + 0x34],ESI
JNZ 0x00033690
MOV ESI,dword ptr [ESP + 0x1c]
SUB ESP,0xc
MOV EBX,EBP
PUSH ESI
CALL 0x000130a0
POP EAX
PUSH dword ptr [ESP + 0x5c]
CALL 0x000130a0
MOV ESI,dword ptr [EBP + 0x2338]
ADD ESP,0x10
JMP 0x000337ff
MOV dword ptr [ESP + 0x80],EAX
MOV dword ptr [ESP + 0xb0],EDI
MOV dword ptr [ESP + 0x30],0x0
MOV dword ptr [ESP + 0x84],0x0
NOP
MOV EBX,dword ptr [EBP + 0x2440]
MOV ESI,dword ptr [EBP + 0x2444]
MOV EDX,EBX
MOV dword ptr [ESP + 0xa8],EBX
MOV EAX,ESI
OR EDX,ESI
MOV dword ptr [ESP + 0xac],ESI
JNZ 0x00034222
MOV dword ptr [ESP + 0x88],EBX
MOV dword ptr [ESP + 0x8c],ESI
MOV dword ptr [ESP + 0x70],EBX
MOV dword ptr [ESP + 0x74],ESI
MOV dword ptr [ESP + 0x6c],0x0
MOV dword ptr [ESP + 0x90],0x0
MOV EAX,dword ptr [EBP + 0x2364]
TEST EAX,EAX
JNZ 0x00033a30
MOV EAX,dword ptr [EBP + 0x2368]
TEST EAX,EAX
JZ 0x00033418
MOV EDI,dword ptr [EBP + 0x2348]
TEST EDI,EDI
JZ 0x000341b6
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcfac4]
MOV EBX,EBP
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
MOV ESI,dword ptr [EBP + 0x2338]
ADD ESP,0x10
TEST ESI,ESI
JNZ 0x00033426
LEA ESI,[ESI]
NOP
MOV EAX,dword ptr [ESP + 0x84]
TEST EAX,EAX
JZ 0x000331fa
SUB ESP,0xc
MOV EBX,EBP
PUSH dword ptr [ESP + 0x90]
CALL 0x000130a0
POP EDI
PUSH dword ptr [ESP + 0x3c]
CALL 0x000130a0
ADD ESP,0x10
MOV ECX,dword ptr [ESP + 0x90]
TEST ECX,ECX
JZ 0x000331fa
TEST ESI,ESI
JZ 0x000331fa
MOV ESI,dword ptr [ESP + 0xa8]
LEA EAX,[EBP + 0xfffcfc44]
SUB ESP,0xc
MOV EBX,EBP
MOV dword ptr [ESP + 0x54],ESI
PUSH 0x5
PUSH ESI
PUSH EAX
LEA EAX,[EBP + 0xfffcfc8c]
PUSH EAX
PUSH 0x0
CALL 0x00013410
ADD ESP,0x18
PUSH ESI
PUSH EAX
CALL 0x00013060
POP EAX
POP EDX
PUSH 0x4
PUSH ESI
CALL 0x00013430
MOV dword ptr [ESP + 0x44],EAX
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0003444f
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcfbbc]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0xac]
MOV EDI,dword ptr [ESP + 0x48]
OR EAX,EDI
JZ 0x00034782
MOV EAX,dword ptr [ESP + 0x34]
MOV ESI,dword ptr [ESP + 0x90]
MOV dword ptr [ESP + 0x38],0x0
MOV EDX,dword ptr [ESP + 0x8c]
MOV dword ptr [ESP + 0x30],0x0
MOV dword ptr [ESP + 0x4c],EAX
LEA EDI,[ESI + EDI*0x8]
MOV dword ptr [ESP + 0x20],EAX
MOV EAX,dword ptr [ESP + 0x88]
MOV dword ptr [ESP + 0x28],EDI
ADD EAX,0x1
MOV dword ptr [ESP + 0x8],ESI
ADC EDX,0x0
MOV dword ptr [ESP + 0x40],EAX
MOV dword ptr [ESP + 0x44],EDX
JMP 0x00033918
ADD dword ptr [ESP + 0x8],0x8
MOV EAX,dword ptr [ESP + 0x8]
ADD dword ptr [ESP + 0x20],0x4
CMP dword ptr [ESP + 0x28],EAX
JZ 0x000330a0
MOV EAX,dword ptr [ESP + 0x8]
MOV EDX,dword ptr [EAX + 0x4]
MOV EAX,dword ptr [EAX]
MOV EBX,EDX
MOV dword ptr [ESP + 0x10],EAX
OR EBX,EAX
MOV dword ptr [ESP + 0x14],EDX
JZ 0x00033900
MOV ESI,EAX
SUB ESI,dword ptr [ESP + 0x70]
MOV EDI,EDX
SBB EDI,dword ptr [ESP + 0x74]
MOV ECX,ESI
MOV ESI,dword ptr [ESP + 0x88]
MOV EBX,EDI
MOV EDI,dword ptr [ESP + 0x8c]
MOV EAX,EBX
CMP ECX,ESI
SBB EAX,EDI
JNC 0x00034716
MOV dword ptr [ESP + 0xa4],0x0
MOV EAX,dword ptr [ESP + 0x6c]
MOV EDI,dword ptr [EAX + ECX*0x8]
AND EDI,0x1
MOV dword ptr [ESP + 0xa0],EDI
JNZ 0x00034736
MOV ESI,dword ptr [ESP + 0x70]
MOV EDI,dword ptr [ESP + 0x74]
SUB ESI,dword ptr [ESP + 0x10]
SBB EDI,dword ptr [ESP + 0x14]
MOV EAX,ESI
MOV EDX,EDI
ADD EAX,dword ptr [ESP + 0x40]
ADC EDX,dword ptr [ESP + 0x44]
XOR EDI,EDI
ADD ECX,0x1
MOV ESI,0x1
ADC EBX,0x0
MOV dword ptr [ESP + 0x10],ECX
MOV dword ptr [ESP + 0x14],EBX
JMP 0x000339c9
MOV EBX,dword ptr [ESP + 0x10]
MOV ECX,dword ptr [ESP + 0x6c]
MOV dword ptr [ESP + 0x1c],ESI
ADD EBX,ESI
TEST byte ptr [ECX + EBX*0x8 + -0x10],0x1
JNZ 0x00034190
ADD ESI,0x1
ADC EDI,0x0
MOV ECX,ESI
MOV EBX,EDI
XOR ECX,EAX
XOR EBX,EDX
OR EBX,ECX
JNZ 0x000339b0
MOV dword ptr [ESP + 0xa0],EAX
MOV ECX,EAX
MOV dword ptr [ESP + 0xa4],EDX
MOV EDI,dword ptr [ESP + 0x30]
MOV EAX,dword ptr [ESP + 0x20]
XOR EDX,EDX
MOV EBX,dword ptr [ESP + 0xa0]
MOV ESI,dword ptr [ESP + 0xa4]
MOV dword ptr [EAX],ECX
MOV EAX,EDX
CMP EDI,EBX
SBB EAX,ESI
CMOVC EDI,ECX
ADD dword ptr [ESP + 0x38],ECX
MOV dword ptr [ESP + 0x30],EDI
JMP 0x00033900
MOV EDX,dword ptr [EBP + 0x2364]
TEST EDX,EDX
JZ 0x000337b9
LEA ESI,[ESI]
MOV EAX,dword ptr [ESP + 0x8]
MOV EAX,dword ptr [EAX + 0x5c]
MOV dword ptr [ESP + 0x10],EAX
TEST EAX,EAX
JZ 0x0003422e
MOV EAX,dword ptr [ESP + 0x8]
MOV ESI,dword ptr [EAX + 0x54]
TEST ESI,ESI
JZ 0x00033418
ADD EAX,0x64
MOV dword ptr [ESP + 0x4c],0x0
MOV dword ptr [ESP + 0x9c],EAX
MOV EAX,dword ptr [EBP + 0xffffffd8]
MOV dword ptr [ESP + 0x48],EAX
NOP
MOV EAX,dword ptr [ESP + 0x10]
MOV EAX,dword ptr [EAX + 0x4]
CMP EAX,0x2
JZ 0x00033a85
CMP EAX,0xb
JNZ 0x00033e90
MOV EBX,dword ptr [EBP + 0x2368]
TEST EBX,EBX
JNZ 0x00033a98
CMP EAX,0x2
JZ 0x00033e90
MOV EAX,dword ptr [ESP + 0x10]
MOV EDI,dword ptr [ESP + 0x8]
MOV EDX,dword ptr [EAX + 0x3c]
MOV EAX,dword ptr [EAX + 0x38]
ADD EDI,0x68
MOV dword ptr [ESP + 0x78],EDI
MOV EBX,EDX
OR EBX,EAX
JZ 0x00033f38
PUSH EDX
MOV EBX,EBP
PUSH EAX
MOV EDI,dword ptr [ESP + 0x18]
PUSH dword ptr [EDI + 0x24]
PUSH dword ptr [EDI + 0x20]
CALL 0x0006b250
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0x78]
MOV ECX,EDI
MOV dword ptr [ESP + 0xc8],EAX
MOV ESI,EAX
MOV EAX,dword ptr [ESP + 0x9c]
CALL 0x00022190
SUB ESP,0xc
MOV EDI,EAX
LEA EAX,[EBP + 0xfffcf9b4]
PUSH 0x5
PUSH dword ptr [ESP + 0xd8]
PUSH EAX
LEA EAX,[EBP + 0xfffcf9e0]
PUSH EAX
PUSH 0x0
CALL 0x00013410
ADD ESP,0x1c
PUSH ESI
PUSH EDI
PUSH EAX
CALL 0x00013060
MOV EDI,dword ptr [EBP + 0x2324]
ADD ESP,0x10
TEST EDI,EDI
JZ 0x00033f10
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcfa08]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
LEA ECX,[ESP + 0xc8]
MOV ESI,dword ptr [EBP + 0x2324]
MOV EDX,dword ptr [ESP + 0x10]
MOV EAX,dword ptr [ESP + 0x8]
TEST ESI,ESI
JZ 0x00033ef8
CALL 0x000222e0
MOV dword ptr [ESP + 0x7c],EAX
MOV EBX,dword ptr [ESP + 0x7c]
TEST EBX,EBX
JZ 0x00033e90
MOV EAX,dword ptr [ESP + 0x10]
MOV EDI,dword ptr [ESP + 0x8]
MOV EAX,dword ptr [EAX + 0x28]
CMP EAX,dword ptr [EDI + 0x58]
JZ 0x000340d0
MOV EDI,dword ptr [ESP + 0x8]
MOV dword ptr [ESP + 0x28],0x0
MOV dword ptr [ESP + 0x40],0x0
CMP EAX,dword ptr [EDI + 0x54]
JC 0x000341d0
MOV ECX,dword ptr [ESP + 0xc8]
TEST ECX,ECX
JZ 0x00033e60
MOV EAX,dword ptr [ESP + 0x8]
LEA EDI,[EAX + 0x17]
ADD EAX,0x42
MOV dword ptr [ESP + 0x54],EAX
MOV EAX,dword ptr [ESP + 0x7c]
MOV dword ptr [ESP + 0x34],EDI
XOR EDI,EDI
LEA ESI,[EAX + 0x10]
LEA EAX,[ESP + 0xd0]
MOV dword ptr [ESP + 0x68],EAX
LEA EAX,[EBP + 0xfffc7c08]
MOV dword ptr [ESP + 0x60],EAX
LEA EAX,[EBP + 0xfffc7ba5]
MOV dword ptr [ESP + 0x38],EAX
LEA EAX,[EBP + 0xfffc7bab]
MOV dword ptr [ESP + 0x58],EAX
LEA EAX,[EBP + 0xfffc7c0e]
MOV dword ptr [ESP + 0x64],EAX
LEA EAX,[ESP + 0xc6]
MOV dword ptr [ESP + 0x5c],EAX
LEA EAX,[EBP + 0xfffc7bb1]
MOV dword ptr [ESP + 0x98],EAX
LEA EAX,[EBP + 0xfffc2af3]
MOV dword ptr [ESP + 0x94],EAX
JMP 0x00033db3
MOVZX ECX,byte ptr [ESI + 0x5]
AND ECX,0x3
MOVZX EAX,CL
MOV byte ptr [ESP + 0x50],CL
CALL 0x00023d60
SUB ESP,0x8
PUSH EAX
PUSH dword ptr [ESP + 0x44]
CALL 0x00013060
ADD ESP,0x10
MOVZX EDX,byte ptr [ESI + 0x5]
MOVZX ECX,byte ptr [ESP + 0x50]
CMP DL,CL
JZ 0x00033c81
MOV EAX,dword ptr [ESP + 0x8]
XOR EDX,ECX
MOVZX EDX,DL
CALL 0x00032810
SUB ESP,0x8
PUSH EAX
PUSH dword ptr [ESP + 0xa4]
CALL 0x00013060
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x8]
MOV EDX,dword ptr [ESI + 0x8]
MOV EBX,EBP
CALL 0x00023e70
SUB ESP,0x8
PUSH EAX
PUSH dword ptr [ESP + 0x70]
CALL 0x00013060
ADD ESP,0x10
MOV EDX,dword ptr [ESI]
CMP EDX,dword ptr [ESP + 0x28]
JNC 0x00033eb0
ADD EDX,dword ptr [ESP + 0x40]
MOV EAX,0x19
CALL 0x0001fd20
MOV EAX,dword ptr [ESP + 0x10]
XOR EDX,EDX
CMP dword ptr [EAX + 0x4],0xb
LEA EAX,[ESI + 0x8]
SETZ DL
SUB ESP,0x8
PUSH dword ptr [ESP + 0x64]
PUSH dword ptr [ESP + 0x74]
PUSH EAX
PUSH ESI
PUSH EDI
PUSH dword ptr [ESP + 0x44]
MOV ECX,dword ptr [ESP + 0x60]
MOV EAX,dword ptr [ESP + 0x28]
CALL 0x0002cf40
ADD ESP,0x20
TEST EAX,EAX
JZ 0x00033d1f
MOV EDX,dword ptr [ESP + 0xd0]
TEST EDX,EDX
JZ 0x00033ed0
CMP EDX,0x1
LEA ECX,[EBP + 0xfffc7a38]
LEA EDX,[EBP + 0xfffc7a39]
MOV EBX,EBP
CMOVNZ EDX,ECX
SUB ESP,0x8
PUSH EAX
PUSH EDX
CALL 0x00013060
ADD ESP,0x10
SUB ESP,0x8
MOV EBX,EBP
MOV EAX,dword ptr [ESP + 0x50]
PUSH dword ptr [EAX]
PUSH 0xa
CALL 0x00013360
MOVZX EAX,byte ptr [ESI + 0x4]
ADD ESP,0x10
SHR AL,0x4
JNZ 0x00033da0
MOV ECX,dword ptr [ESP + 0x10]
MOV EAX,dword ptr [ECX + 0x2c]
MOV dword ptr [ESP + 0x50],EAX
CMP EAX,EDI
JA 0x00033da0
MOV EBX,dword ptr [ESP + 0x8]
CMP word ptr [EBX + 0x42],0x8
JZ 0x00033da0
CMP byte ptr [EBX + 0x17],0x6
JZ 0x00033da0
MOV EDX,dword ptr [ESP + 0x78]
MOV EAX,dword ptr [ESP + 0x9c]
MOV EBX,EBP
CALL 0x00022190
SUB ESP,0x4
MOV dword ptr [ESP + 0xb8],EAX
LEA EAX,[EBP + 0xfffcfa88]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
PUSH dword ptr [ESP + 0x60]
MOV EDX,dword ptr [ESP + 0xc8]
PUSH EDX
PUSH EDI
PUSH EAX
CALL 0x00066bf0
ADD ESP,0x20
NOP
ADD EDI,0x1
ADD ESI,0x1c
CMP dword ptr [ESP + 0xc8],EDI
JBE 0x00033e60
SUB ESP,0x8
MOV EBX,EBP
PUSH EDI
PUSH dword ptr [ESP + 0x6c]
CALL 0x00013060
MOV EDX,dword ptr [ESI + -0xc]
MOV EAX,dword ptr [ESI + -0x10]
MOV ECX,0x6
CALL 0x0001e910
POP EAX
POP EDX
MOV EAX,dword ptr [ESP + 0x50]
PUSH dword ptr [EAX]
PUSH 0x20
CALL 0x00013360
MOV EDX,dword ptr [ESI + -0x4]
MOV EAX,dword ptr [ESI + -0x8]
MOV ECX,0x2
CALL 0x0001e910
MOVZX ECX,byte ptr [ESI + 0x4]
MOV EDX,dword ptr [ESP + 0x64]
MOV EAX,dword ptr [ESP + 0x44]
AND ECX,0xf
CALL 0x00023ff0
POP ECX
POP EDX
PUSH EAX
PUSH dword ptr [ESP + 0x44]
CALL 0x00013060
MOVZX EDX,byte ptr [ESI + 0x4]
MOV EAX,dword ptr [ESP + 0x44]
SHR DL,0x4
MOVZX EDX,DL
CALL 0x00025a40
POP ECX
POP EDX
PUSH EAX
PUSH dword ptr [ESP + 0x64]
CALL 0x00013060
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x8]
CMP byte ptr [EAX + 0x17],0x6
JNZ 0x00033c30
MOVZX EAX,byte ptr [ESI + 0x5]
CALL 0x00023de0
SUB ESP,0x8
PUSH EAX
PUSH dword ptr [ESP + 0x44]
CALL 0x00013060
ADD ESP,0x10
JMP 0x00033c81
SUB ESP,0xc
MOV EBX,EBP
PUSH dword ptr [ESP + 0x88]
CALL 0x000130a0
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x8]
MOV EDI,dword ptr [ESP + 0x40]
CMP dword ptr [EAX + 0x64],EDI
JZ 0x00033e90
SUB ESP,0xc
PUSH dword ptr [ESP + 0x4c]
CALL 0x000130a0
ADD ESP,0x10
MOV EDI,dword ptr [ESP + 0x8]
ADD dword ptr [ESP + 0x4c],0x1
ADD dword ptr [ESP + 0x10],0x48
MOV EAX,dword ptr [ESP + 0x4c]
CMP dword ptr [EDI + 0x54],EAX
JA 0x00033a70
JMP 0x00033418
SUB ESP,0x4
PUSH 0x5
PUSH dword ptr [ESP + 0x9c]
PUSH 0x0
CALL 0x000130f0
ADD ESP,0x10
MOV EDX,EAX
JMP 0x00033caf
SUB ESP,0x4
MOV EBX,EBP
MOVZX EDX,word ptr [ESP + 0xca]
PUSH EDX
PUSH EAX
LEA EAX,[EBP + 0xfffc7c14]
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
JMP 0x00033d1f
CALL 0x00022830
MOV dword ptr [ESP + 0x7c],EAX
JMP 0x00033b6b
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcfa44]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
JMP 0x00033b45
MOV ECX,dword ptr [ESP + 0x10]
MOV EAX,dword ptr [ESP + 0x9c]
MOV EDX,EDI
MOV EBX,EBP
CALL 0x00022190
SUB ESP,0x4
MOV ESI,EAX
LEA EAX,[EBP + 0xfffcf984]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDX
POP ECX
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
JMP 0x00033e90
TEST ECX,ECX
JNZ 0x000340e5
MOV ECX,dword ptr [EBP + 0x3538]
TEST ECX,ECX
JZ 0x000340e5
LEA ESI,[ESI]
NOP
MOV EAX,dword ptr [ESP + 0x8]
MOVZX EAX,word ptr [EAX + 0x42]
CMP AX,0x9026
SETZ CL
CMP AX,0x16
SETZ DL
OR CL,DL
JNZ 0x00033fb5
MOV ESI,0x4
CMP AX,0xa390
JNZ 0x00033fca
MOV EAX,dword ptr [ESP + 0x8]
CMP byte ptr [EAX + 0x14],0x2
SETZ AL
MOVZX EAX,AL
LEA ESI,[EAX*0x4 + 0x4]
SUB ESP,0x8
MOV EBX,EBP
PUSH 0x0
PUSH 0x10
MOV EDI,dword ptr [ESP + 0x18]
MOV EDX,dword ptr [ESP + 0x90]
MOV ECX,dword ptr [ESP + 0xc0]
MOV EAX,EDI
CALL 0x00026dc0
ADD ESP,0xc
ADD EAX,dword ptr [EBP + 0x3550]
PUSH 0x0
PUSH EAX
PUSH dword ptr [EDI + 0x4]
CALL 0x00013130
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00034241
MOV EAX,dword ptr [ESP + 0x8]
PUSH dword ptr [EAX + 0x4]
PUSH 0x1
PUSH ESI
LEA EDI,[ESP + 0xd4]
PUSH EDI
CALL 0x00013180
ADD ESP,0x10
CMP EAX,0x1
JZ 0x00034251
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf864]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x000666b0
ADD ESP,0x10
MOV dword ptr [ESP + 0x30],0x0
MOV dword ptr [ESP + 0x84],0x0
MOV EAX,dword ptr [EBP + 0x2348]
TEST EAX,EAX
JNZ 0x00034179
SUB ESP,0xc
MOV EBX,EBP
PUSH dword ptr [ESP + 0x90]
CALL 0x000130a0
POP EAX
PUSH dword ptr [ESP + 0x3c]
CALL 0x000130a0
ADD ESP,0x10
MOV dword ptr [ESP + 0x30],0x0
MOV dword ptr [ESP + 0x84],0x0
MOV dword ptr [ESP + 0x1c],0x0
MOV dword ptr [ESP + 0x20],0x0
MOV dword ptr [ESP + 0x80],0x0
MOV dword ptr [ESP + 0xb0],0x0
JMP 0x0003325f
MOV EAX,EDI
MOV EDI,dword ptr [EDI + 0x64]
MOV EAX,dword ptr [EAX + 0x68]
MOV dword ptr [ESP + 0x40],EDI
MOV dword ptr [ESP + 0x28],EAX
JMP 0x00033ba8
MOV ESI,dword ptr [EBP + 0x2404]
MOV EBX,dword ptr [EBP + 0x2400]
MOV EDI,ESI
MOV dword ptr [ESP + 0x70],EBX
MOV ESI,EBX
OR EBX,EDI
MOV dword ptr [ESP + 0x74],EDI
MOV ECX,EDI
JZ 0x00034422
MOV dword ptr [ESP + 0x84],0x0
MOV dword ptr [ESP + 0x1c],0x0
MOV dword ptr [ESP + 0x20],0x0
MOV dword ptr [ESP + 0x30],0x0
MOV dword ptr [ESP + 0x80],0x0
MOV dword ptr [ESP + 0xb0],0x0
JMP 0x00033293
MOV EAX,dword ptr [ESP + 0x48]
MOV ESI,dword ptr [ESP + 0x28]
MOV dword ptr [ESP + 0x8],EBX
MOV dword ptr [EAX],EDX
JMP 0x000335a5
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcfb84]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x000666b0
ADD ESP,0x10
ADD ESP,0xec
XOR EAX,EAX
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV dword ptr [ESP + 0xa0],ESI
MOV ECX,ESI
MOV dword ptr [ESP + 0xa4],EDI
JMP 0x000339eb
MOV EAX,dword ptr [EBP + 0x2364]
TEST EAX,EAX
JNZ 0x00033a30
MOV EAX,dword ptr [ESP + 0x8]
MOV EAX,dword ptr [EAX + 0x5c]
MOV dword ptr [ESP + 0x10],EAX
TEST EAX,EAX
JNZ 0x00033a43
JMP 0x000337b9
LEA EDX,[EAX + EAX*0x8]
MOV EAX,dword ptr [EDI + 0x5c]
SUB ESP,0x4
MOV EBX,EBP
PUSH 0x5
LEA ESI,[EAX + EDX*0x8]
LEA EAX,[EBP + 0xfffc4167]
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV ECX,dword ptr [ESI + 0x18]
MOV EDX,EDI
MOV dword ptr [ESP],EAX
XOR EAX,EAX
PUSH dword ptr [ESI + 0x24]
PUSH dword ptr [ESI + 0x20]
PUSH 0x0
PUSH 0x1
CALL 0x0001bf90
MOV dword ptr [ESP + 0x60],EAX
ADD ESP,0x20
TEST EAX,EAX
JZ 0x00033ba8
MOV EAX,dword ptr [ESI + 0x20]
MOV dword ptr [ESP + 0x28],EAX
JMP 0x00033ba8
MOV EDX,dword ptr [ESP + 0xa8]
JMP 0x000332bc
MOV EAX,dword ptr [EBP + 0x2368]
TEST EAX,EAX
JZ 0x00033418
JMP 0x000337b9
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf834]
PUSH 0x5
JMP 0x00034039
MOV EAX,dword ptr [ESP + 0x8]
PUSH dword ptr [EAX + 0x4]
PUSH 0x1
PUSH ESI
LEA EAX,[ESP + 0xdc]
MOV dword ptr [ESP + 0x34],EAX
PUSH EAX
CALL 0x00013180
ADD ESP,0x10
CMP EAX,0x1
JNZ 0x000345a8
SUB ESP,0x8
LEA EBX,[EBP + 0x5dd4]
PUSH ESI
PUSH EDI
CALL dword ptr [EBX]
MOV EDI,EDX
MOV dword ptr [ESP + 0x90],EAX
MOV dword ptr [ESP + 0xc0],EDX
POP EAX
POP EDX
PUSH ESI
PUSH dword ptr [ESP + 0x34]
CALL dword ptr [EBX]
MOV EBX,dword ptr [ESP + 0x18]
MOV ECX,EDI
MOV dword ptr [ESP + 0x30],EDX
MOV EDX,dword ptr [ESP + 0x90]
MOV dword ptr [ESP + 0x2c],EAX
MOV EAX,EBX
MOV dword ptr [ESP],ESI
CALL 0x0001e0f0
MOV EDX,dword ptr [ESP + 0x2c]
MOV ECX,dword ptr [ESP + 0x30]
MOV dword ptr [ESP],ESI
MOV dword ptr [ESP + 0x94],EAX
MOV EDI,EAX
MOV EAX,EBX
CALL 0x0001e0f0
MOV dword ptr [ESP + 0x40],EAX
ADD ESP,0x10
TEST EDI,EDI
JZ 0x0003405f
TEST EAX,EAX
JNZ 0x0003325f
JMP 0x0003405f
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf834]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x000666b0
ADD ESP,0x10
MOV dword ptr [ESP + 0x88],0x0
MOV dword ptr [ESP + 0x8c],0x0
MOV dword ptr [ESP + 0x70],0x0
MOV dword ptr [ESP + 0x74],0x0
MOV dword ptr [ESP + 0x90],0x0
SUB ESP,0xc
MOV EBX,EBP
PUSH dword ptr [ESP + 0x9c]
CALL 0x000130a0
MOV EAX,dword ptr [EBP + 0x2348]
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00034179
MOV dword ptr [ESP + 0x6c],0x0
MOV dword ptr [ESP + 0x90],0x0
MOV dword ptr [ESP + 0xa8],0x0
MOV dword ptr [ESP + 0xac],0x0
MOV EDX,dword ptr [EBP + 0x2440]
MOV EAX,dword ptr [EBP + 0x2444]
MOV ECX,dword ptr [EBP + 0x2400]
MOV EBX,dword ptr [EBP + 0x2404]
OR ECX,EDX
OR EBX,EAX
OR EBX,ECX
JNZ 0x000333c0
JMP 0x0003378f
MOV dword ptr [ESP + 0x84],0x0
MOV dword ptr [ESP + 0x1c],0x0
MOV dword ptr [ESP + 0x20],0x0
MOV dword ptr [ESP + 0x30],0x0
MOV dword ptr [ESP + 0x80],0x0
MOV dword ptr [ESP + 0xb0],0x0
JMP 0x000332bc
LEA EAX,[EDI + 0x1]
MOV dword ptr [ESP + 0x8],EAX
JMP 0x000335a5
SHLD EDX,EAX,0x2
SHL EAX,0x2
ADD EAX,ECX
ADC EDX,EBX
MOV dword ptr [ESP + 0x38],EAX
MOV dword ptr [ESP + 0x3c],EDX
JMP 0x00032e70
MOV EBX,ESI
MOV dword ptr [ESP + 0x8c],EDI
MOV dword ptr [ESP + 0xac],EDI
MOV EDI,EBX
MOV dword ptr [ESP + 0x88],EBX
MOV dword ptr [ESP + 0xa8],EBX
MOV dword ptr [ESP + 0x1c],EBX
MOV dword ptr [ESP + 0x20],ECX
JMP 0x00033382
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcfcd4]
PUSH 0x5
JMP 0x00034166
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf958]
MOV EBX,EBP
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
MOV EAX,dword ptr [EBP + 0x2324]
ADD ESP,0x10
TEST EAX,EAX
JZ 0x000347b9
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf8d8]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
MOV ESI,dword ptr [ESP + 0xac]
MOV EBX,dword ptr [ESP + 0xa8]
MOV EDX,ESI
OR EDX,EBX
JZ 0x00033418
MOV EAX,dword ptr [ESP + 0xa8]
XOR EBX,EBX
MOV dword ptr [ESP + 0x10],EAX
JMP 0x000344e5
ADD EBX,0x1
CMP dword ptr [ESP + 0x10],EBX
JZ 0x00033418
MOV EAX,dword ptr [ESP + 0x90]
MOV EDI,dword ptr [EAX + EBX*0x8 + 0x4]
MOV ESI,dword ptr [EAX + EBX*0x8]
MOV EDX,EDI
OR EDX,ESI
JZ 0x000344d8
SUB ESI,dword ptr [ESP + 0x70]
SBB EDI,dword ptr [ESP + 0x74]
JMP 0x00034520
ADD ESI,0x1
MOV EDX,dword ptr [ESP + 0x6c]
LEA EAX,[ESI*0x8 + 0x0]
ADC EDI,0x0
TEST byte ptr [EDX + EAX*0x1 + -0x8],0x1
JNZ 0x000344d8
MOV EDX,dword ptr [ESP + 0x70]
MOV ECX,dword ptr [ESP + 0x74]
ADD EDX,ESI
ADC ECX,EDI
SUB ESP,0xc
PUSH EBX
MOV EAX,dword ptr [ESP + 0x18]
CALL 0x00032a90
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x88]
MOV ECX,EDI
MOV EDX,dword ptr [ESP + 0x8c]
CMP ESI,EAX
SBB ECX,EDX
JC 0x00034508
JMP 0x000344d8
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf864]
PUSH 0x5
JMP 0x00034303
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf834]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x000666b0
ADD ESP,0x10
MOV dword ptr [ESP + 0x88],0x0
MOV dword ptr [ESP + 0x8c],0x0
MOV dword ptr [ESP + 0x90],0x0
JMP 0x00034347
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf88c]
PUSH 0x5
JMP 0x00034039
SUB ESP,0x4
LEA EAX,[EBP + 0xfffc7bd2]
MOV EBX,EBP
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
MOV EAX,dword ptr [EBP + 0x2324]
ADD ESP,0x10
TEST EAX,EAX
JZ 0x000347dc
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf8d8]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
SUB ESP,0x8
MOV EBX,EBP
XOR ESI,ESI
PUSH 0x1
MOV EDI,dword ptr [ESP + 0x28]
PUSH EDI
CALL 0x0005da70
MOV dword ptr [ESP + 0x38],EAX
ADD ESP,0xc
PUSH EDI
PUSH 0x0
PUSH EAX
CALL 0x000132b0
ADD ESP,0x10
LEA EAX,[EBP + 0xfffc7bec]
MOV dword ptr [ESP + 0x34],EAX
MOV EAX,dword ptr [ESP + 0xb0]
OR EAX,dword ptr [ESP + 0x80]
JZ 0x000346e1
MOV dword ptr [ESP + 0x10],ESI
MOV ESI,dword ptr [ESP + 0x30]
MOV EAX,dword ptr [ESP + 0x84]
MOV EDI,dword ptr [ESP + 0x10]
MOV EBX,dword ptr [EAX + EDI*0x8]
MOV EDI,dword ptr [EAX + EDI*0x8 + 0x4]
MOV EAX,EDI
OR EAX,EBX
JNZ 0x0003468d
JMP 0x000346cb
MOV EAX,dword ptr [ESP + 0x28]
MOV EDX,EBX
ADD EAX,EBX
CMP byte ptr [EAX],0x0
JNZ 0x000346ae
MOV byte ptr [EAX],0x1
MOV EDI,dword ptr [ESI + EDX*0x8 + 0x4]
MOV EBX,dword ptr [ESI + EBX*0x8]
MOV EAX,EDI
OR EAX,EBX
JZ 0x000346cb
SUB ESP,0xc
MOV ECX,EDI
MOV EDX,EBX
PUSH dword ptr [ESP + 0x1c]
MOV EAX,dword ptr [ESP + 0x18]
CALL 0x00032a90
ADD ESP,0x10
CMP EBX,dword ptr [ESP + 0x1c]
SBB EDI,dword ptr [ESP + 0x20]
JC 0x00034670
SUB ESP,0x4
MOV EBX,EBP
PUSH 0x5
PUSH dword ptr [ESP + 0x3c]
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x000666b0
ADD ESP,0x10
ADD dword ptr [ESP + 0x10],0x1
MOV EAX,dword ptr [ESP + 0x10]
CMP dword ptr [ESP + 0x80],EAX
JNZ 0x00034650
SUB ESP,0xc
MOV EBX,EBP
PUSH dword ptr [ESP + 0x34]
CALL 0x000130a0
ADD ESP,0x10
JMP 0x00033400
MOV EBP,dword ptr [ESP + 0x10]
MOV dword ptr [ESP + 0x88],0x0
MOV dword ptr [ESP + 0x8c],0x0
JMP 0x00034347
MOV dword ptr [ESP + 0xa0],0x1
MOV ECX,0x1
MOV dword ptr [ESP + 0xa4],0x0
JMP 0x000339eb
MOV ECX,0x1
JMP 0x000339eb
SUB ESP,0xc
PUSH dword ptr [ESP + 0x40]
CALL 0x000130a0
POP ECX
POP ESI
PUSH 0x4
PUSH 0x1
CALL 0x00013430
ADD ESP,0x10
MOV ESI,EAX
TEST EAX,EAX
JNZ 0x000336fb
SUB ESP,0xc
MOV EBX,EBP
PUSH dword ptr [ESP + 0x5c]
CALL 0x000130a0
ADD ESP,0xc
LEA EAX,[EBP + 0xfffcfbe8]
PUSH 0x5
JMP 0x00034166
SUB ESP,0x8
PUSH 0x4
PUSH 0x1
CALL 0x00013430
ADD ESP,0x10
MOV ESI,EAX
TEST EAX,EAX
JNZ 0x000331cb
SUB ESP,0xc
MOV EBX,EBP
PUSH dword ptr [ESP + 0x40]
CALL 0x000130a0
ADD ESP,0xc
LEA EAX,[EBP + 0xfffcfd10]
PUSH 0x5
JMP 0x00034166
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf914]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
JMP 0x000344ab
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf914]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
JMP 0x00034604
SUB ESP,0x4
LEA EAX,[EBP + 0xfffcf834]
PUSH 0x5
PUSH EAX
PUSH 0x0
JMP 0x00033073
MOV EBX,dword ptr [ESP + 0x38]
MOV ESI,dword ptr [ESP + 0x3c]
MOV dword ptr [ESP + 0x8c],EBP
MOV EAX,dword ptr [ESP + 0xa8]
MOV EBP,dword ptr [ESP + 0x10]
MOV dword ptr [ESP + 0x88],EDI
MOV EDX,dword ptr [ESP + 0xac]
SHLD EDX,EAX,0x2
SHL EAX,0x2
ADD EBX,EAX
ADC ESI,EDX
SUB ESP,0x8
MOV EDX,EBX
MOV EBX,EBP
PUSH 0x0
MOV ECX,ESI
PUSH 0x4
MOV EDI,dword ptr [ESP + 0x18]
MOV EAX,EDI
CALL 0x00026dc0
ADD ESP,0xc
ADD EAX,dword ptr [EBP + 0x3550]
PUSH 0x0
PUSH EAX
PUSH dword ptr [EDI + 0x4]
CALL 0x00013130
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000347ff
SUB ESP,0xc
PUSH 0x4
MOV EDX,dword ptr [ESP + 0x98]
MOV ECX,dword ptr [ESP + 0x9c]
MOV EAX,dword ptr [ESP + 0x18]
CALL 0x0001e0f0
MOV dword ptr [ESP + 0x7c],EAX
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00034392
JMP 0x00034347
(translation_unit "undefined4 FUN_00032cd0(void)\n\n{\n  undefined4 *puVar1;\n  int iVar2;\n  double dVar3;\n  byte bVar4;\n  short sVar5;\n  uint uVar6;\n  ulonglong uVar7;\n  ulonglong uVar8;\n  int iVar9;\n  int iVar10;\n  size_t sVar11;\n  uint uVar12;\n  uint *puVar13;\n  uint *puVar14;\n  void *pvVar15;\n  uint uVar16;\n  char *pcVar17;\n  uint *puVar18;\n  undefined4 uVar19;\n  size_t sVar20;\n  uint uVar21;\n  uint uVar22;\n  char *__format;\n  int unaff_EBP;\n  uint uVar23;\n  uint uVar24;\n  bool bVar25;\n  longlong lVar26;\n  longlong lVar27;\n  longlong lVar28;\n  longlong lVar29;\n  undefined4 uVar30;\n  undefined *puVar31;\n  undefined4 uVar32;\n  uint *local_f4;\n  uint local_ec;\n  uint uStack_e8;\n  uint local_e0;\n  uint *local_dc;\n  uint local_d4;\n  void *local_cc;\n  uint *local_c4;\n  void *local_bc;\n  uint *local_b4;\n  uint local_b0;\n  void *local_90;\n  uint local_8c;\n  int local_88;\n  void *local_80;\n  size_t local_7c;\n  uint *local_78;\n  uint local_74;\n  uint local_70;\n  uint *local_6c;\n  uint local_5c;\n  int local_58;\n  uint local_54;\n  int local_50;\n  ushort local_36;\n  uint local_34 [2];\n  int local_2c [7];\n  \n  iVar9 = FUN_0004ab89();\n  if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }\n  local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n  local_74 = (uint)lVar26;\n  local_88 = (int)((ulonglong)lVar27 >> 0x20);\n  local_8c = (uint)lVar27;\n  if (local_6c == (uint *)0x0) {\n    return 1;\n  }\n  if (iVar9 == 0) {\n    return 1;\n  }\n  pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);\n  printf(pcVar17,local_54);\n  puVar18 = (uint *)calloc(local_54,4);\n  if (puVar18 != (uint *)0x0) {\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }\nLAB_00034166:\n  dcgettext();\n  error();\n  return 0;\n}\n\n" (function_definition "undefined4 FUN_00032cd0(void)\n\n{\n  undefined4 *puVar1;\n  int iVar2;\n  double dVar3;\n  byte bVar4;\n  short sVar5;\n  uint uVar6;\n  ulonglong uVar7;\n  ulonglong uVar8;\n  int iVar9;\n  int iVar10;\n  size_t sVar11;\n  uint uVar12;\n  uint *puVar13;\n  uint *puVar14;\n  void *pvVar15;\n  uint uVar16;\n  char *pcVar17;\n  uint *puVar18;\n  undefined4 uVar19;\n  size_t sVar20;\n  uint uVar21;\n  uint uVar22;\n  char *__format;\n  int unaff_EBP;\n  uint uVar23;\n  uint uVar24;\n  bool bVar25;\n  longlong lVar26;\n  longlong lVar27;\n  longlong lVar28;\n  longlong lVar29;\n  undefined4 uVar30;\n  undefined *puVar31;\n  undefined4 uVar32;\n  uint *local_f4;\n  uint local_ec;\n  uint uStack_e8;\n  uint local_e0;\n  uint *local_dc;\n  uint local_d4;\n  void *local_cc;\n  uint *local_c4;\n  void *local_bc;\n  uint *local_b4;\n  uint local_b0;\n  void *local_90;\n  uint local_8c;\n  int local_88;\n  void *local_80;\n  size_t local_7c;\n  uint *local_78;\n  uint local_74;\n  uint local_70;\n  uint *local_6c;\n  uint local_5c;\n  int local_58;\n  uint local_54;\n  int local_50;\n  ushort local_36;\n  uint local_34 [2];\n  int local_2c [7];\n  \n  iVar9 = FUN_0004ab89();\n  if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }\n  local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n  local_74 = (uint)lVar26;\n  local_88 = (int)((ulonglong)lVar27 >> 0x20);\n  local_8c = (uint)lVar27;\n  if (local_6c == (uint *)0x0) {\n    return 1;\n  }\n  if (iVar9 == 0) {\n    return 1;\n  }\n  pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);\n  printf(pcVar17,local_54);\n  puVar18 = (uint *)calloc(local_54,4);\n  if (puVar18 != (uint *)0x0) {\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }\nLAB_00034166:\n  dcgettext();\n  error();\n  return 0;\n}" type_identifier (function_declarator "FUN_00032cd0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  undefined4 *puVar1;\n  int iVar2;\n  double dVar3;\n  byte bVar4;\n  short sVar5;\n  uint uVar6;\n  ulonglong uVar7;\n  ulonglong uVar8;\n  int iVar9;\n  int iVar10;\n  size_t sVar11;\n  uint uVar12;\n  uint *puVar13;\n  uint *puVar14;\n  void *pvVar15;\n  uint uVar16;\n  char *pcVar17;\n  uint *puVar18;\n  undefined4 uVar19;\n  size_t sVar20;\n  uint uVar21;\n  uint uVar22;\n  char *__format;\n  int unaff_EBP;\n  uint uVar23;\n  uint uVar24;\n  bool bVar25;\n  longlong lVar26;\n  longlong lVar27;\n  longlong lVar28;\n  longlong lVar29;\n  undefined4 uVar30;\n  undefined *puVar31;\n  undefined4 uVar32;\n  uint *local_f4;\n  uint local_ec;\n  uint uStack_e8;\n  uint local_e0;\n  uint *local_dc;\n  uint local_d4;\n  void *local_cc;\n  uint *local_c4;\n  void *local_bc;\n  uint *local_b4;\n  uint local_b0;\n  void *local_90;\n  uint local_8c;\n  int local_88;\n  void *local_80;\n  size_t local_7c;\n  uint *local_78;\n  uint local_74;\n  uint local_70;\n  uint *local_6c;\n  uint local_5c;\n  int local_58;\n  uint local_54;\n  int local_50;\n  ushort local_36;\n  uint local_34 [2];\n  int local_2c [7];\n  \n  iVar9 = FUN_0004ab89();\n  if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }\n  local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n  local_74 = (uint)lVar26;\n  local_88 = (int)((ulonglong)lVar27 >> 0x20);\n  local_8c = (uint)lVar27;\n  if (local_6c == (uint *)0x0) {\n    return 1;\n  }\n  if (iVar9 == 0) {\n    return 1;\n  }\n  pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);\n  printf(pcVar17,local_54);\n  puVar18 = (uint *)calloc(local_54,4);\n  if (puVar18 != (uint *)0x0) {\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }\nLAB_00034166:\n  dcgettext();\n  error();\n  return 0;\n}" { (declaration "undefined4 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "double dVar3;" primitive_type identifier ;) (declaration "byte bVar4;" type_identifier identifier ;) (declaration "short sVar5;" (sized_type_specifier "short" short) identifier ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "ulonglong uVar7;" type_identifier identifier ;) (declaration "ulonglong uVar8;" type_identifier identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "size_t sVar11;" primitive_type identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "uint *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "uint *puVar14;" type_identifier (pointer_declarator "*puVar14" * identifier) ;) (declaration "void *pvVar15;" primitive_type (pointer_declarator "*pvVar15" * identifier) ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "char *pcVar17;" primitive_type (pointer_declarator "*pcVar17" * identifier) ;) (declaration "uint *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "undefined4 uVar19;" type_identifier identifier ;) (declaration "size_t sVar20;" primitive_type identifier ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "char *__format;" primitive_type (pointer_declarator "*__format" * identifier) ;) (declaration "int unaff_EBP;" primitive_type identifier ;) (declaration "uint uVar23;" type_identifier identifier ;) (declaration "uint uVar24;" type_identifier identifier ;) (declaration "bool bVar25;" primitive_type identifier ;) (declaration "longlong lVar26;" type_identifier identifier ;) (declaration "longlong lVar27;" type_identifier identifier ;) (declaration "longlong lVar28;" type_identifier identifier ;) (declaration "longlong lVar29;" type_identifier identifier ;) (declaration "undefined4 uVar30;" type_identifier identifier ;) (declaration "undefined *puVar31;" type_identifier (pointer_declarator "*puVar31" * identifier) ;) (declaration "undefined4 uVar32;" type_identifier identifier ;) (declaration "uint *local_f4;" type_identifier (pointer_declarator "*local_f4" * identifier) ;) (declaration "uint local_ec;" type_identifier identifier ;) (declaration "uint uStack_e8;" type_identifier identifier ;) (declaration "uint local_e0;" type_identifier identifier ;) (declaration "uint *local_dc;" type_identifier (pointer_declarator "*local_dc" * identifier) ;) (declaration "uint local_d4;" type_identifier identifier ;) (declaration "void *local_cc;" primitive_type (pointer_declarator "*local_cc" * identifier) ;) (declaration "uint *local_c4;" type_identifier (pointer_declarator "*local_c4" * identifier) ;) (declaration "void *local_bc;" primitive_type (pointer_declarator "*local_bc" * identifier) ;) (declaration "uint *local_b4;" type_identifier (pointer_declarator "*local_b4" * identifier) ;) (declaration "uint local_b0;" type_identifier identifier ;) (declaration "void *local_90;" primitive_type (pointer_declarator "*local_90" * identifier) ;) (declaration "uint local_8c;" type_identifier identifier ;) (declaration "int local_88;" primitive_type identifier ;) (declaration "void *local_80;" primitive_type (pointer_declarator "*local_80" * identifier) ;) (declaration "size_t local_7c;" primitive_type identifier ;) (declaration "uint *local_78;" type_identifier (pointer_declarator "*local_78" * identifier) ;) (declaration "uint local_74;" type_identifier identifier ;) (declaration "uint local_70;" type_identifier identifier ;) (declaration "uint *local_6c;" type_identifier (pointer_declarator "*local_6c" * identifier) ;) (declaration "uint local_5c;" type_identifier identifier ;) (declaration "int local_58;" primitive_type identifier ;) (declaration "uint local_54;" type_identifier identifier ;) (declaration "int local_50;" primitive_type identifier ;) (declaration "ushort local_36;" type_identifier identifier ;) (declaration "uint local_34 [2];" type_identifier (array_declarator "local_34 [2]" identifier [ number_literal ]) ;) (declaration "int local_2c [7];" primitive_type (array_declarator "local_2c [7]" identifier [ number_literal ]) ;) (expression_statement "iVar9 = FUN_0004ab89();" (assignment_expression "iVar9 = FUN_0004ab89()" identifier = (call_expression "FUN_0004ab89()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) && (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal)) )) (compound_statement "{\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }" { (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (pointer_expression "*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;" if (parenthesized_expression "(*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)" ( (binary_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0" (binary_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0" (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" * (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (binary_expression "(int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0" (cast_expression "(int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) != number_literal)) )) (goto_statement "goto LAB_00033f90;" goto statement_identifier ;)) (expression_statement "lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);" (assignment_expression "lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" identifier = (pointer_expression "*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }" if (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0)" ( (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (binary_expression "(int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (cast_expression "(int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) != number_literal)) )) (compound_statement "{\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }" { (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar29 = lVar28;" (assignment_expression "lVar29 = lVar28" identifier = identifier) ;) (goto_statement "goto LAB_00032d84;" goto statement_identifier ;) })) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar28 = lVar29;" (assignment_expression "lVar28 = lVar29" identifier = identifier) ;) (labeled_statement "LAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" statement_identifier : (expression_statement "puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) ;)) (expression_statement "uVar21 = *puVar18;" (assignment_expression "uVar21 = *puVar18" identifier = (pointer_expression "*puVar18" * identifier)) ;) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" identifier = (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" * (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "lVar26 = *(longlong *)puVar18;" (assignment_expression "lVar26 = *(longlong *)puVar18" identifier = (pointer_expression "*(longlong *)puVar18" * (cast_expression "(longlong *)puVar18" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "lVar27 = *(longlong *)puVar18;" (assignment_expression "lVar27 = *(longlong *)puVar18" identifier = (pointer_expression "*(longlong *)puVar18" * (cast_expression "(longlong *)puVar18" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }" if (parenthesized_expression "(uVar21 == 0 && iVar10 == 0)" ( (binary_expression "uVar21 == 0 && iVar10 == 0" (binary_expression "uVar21 == 0" identifier == number_literal) && (binary_expression "iVar10 == 0" identifier == number_literal)) )) (compound_statement "{\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }" { (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_54 = uVar21;" (assignment_expression "local_54 = uVar21" identifier = identifier) ;) (expression_statement "local_50 = iVar10;" (assignment_expression "local_50 = iVar10" identifier = identifier) ;) (goto_statement "goto LAB_0003378f;" goto statement_identifier ;) })) (labeled_statement "LAB_000332bc:\n    lVar27 = 0;" statement_identifier : (expression_statement "lVar27 = 0;" (assignment_expression "lVar27 = 0" identifier = number_literal) ;)) (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000333c0:\n    local_7c = (size_t)lVar28;" statement_identifier : (expression_statement "local_7c = (size_t)lVar28;" (assignment_expression "local_7c = (size_t)lVar28" identifier = (cast_expression "(size_t)lVar28" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;)) (expression_statement "uVar23 = (uint)((ulonglong)lVar29 >> 0x20);" (assignment_expression "uVar23 = (uint)((ulonglong)lVar29 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar29 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_e0 = (uint)lVar29;" (assignment_expression "local_e0 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_70 = (uint)((ulonglong)lVar26 >> 0x20);" (assignment_expression "local_70 = (uint)((ulonglong)lVar26 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar26 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar26 >> 0x20)" ( (binary_expression "(ulonglong)lVar26 >> 0x20" (cast_expression "(ulonglong)lVar26" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_74 = (uint)lVar26;" (assignment_expression "local_74 = (uint)lVar26" identifier = (cast_expression "(uint)lVar26" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_88 = (int)((ulonglong)lVar27 >> 0x20);" (assignment_expression "local_88 = (int)((ulonglong)lVar27 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar27 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar27 >> 0x20)" ( (binary_expression "(ulonglong)lVar27 >> 0x20" (cast_expression "(ulonglong)lVar27" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_8c = (uint)lVar27;" (assignment_expression "local_8c = (uint)lVar27" identifier = (cast_expression "(uint)lVar27" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;" if (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_0003378f;" goto statement_identifier ;)) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }" { (if_statement "if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }" if (parenthesized_expression "((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0))" ( (binary_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)" (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0)" ( (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 0xe" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) || (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 2" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) ))) )) (compound_statement "{\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }" { (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_00033a30;" goto statement_identifier ;)) (goto_statement "goto LAB_000337b9;" goto statement_identifier ;) })) (if_statement "if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }" if (parenthesized_expression "(iVar10 != 0 || uVar21 != 0)" ( (binary_expression "iVar10 != 0 || uVar21 != 0" (binary_expression "iVar10 != 0" identifier != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) )) (compound_statement "{\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }" { (expression_statement "iVar9 = unaff_EBP + 0x48efc;" (assignment_expression "iVar9 = unaff_EBP + 0x48efc" identifier = (binary_expression "unaff_EBP + 0x48efc" identifier + number_literal)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,iVar9,uVar32);" (call_expression "printf(pcVar17,iVar9,uVar32)" identifier (argument_list "(pcVar17,iVar9,uVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" if (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" ( (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" * (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" " string_content ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" { (expression_statement "puVar31 = &UNK_00050c3e + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c3e + unaff_EBP" identifier = (binary_expression "&UNK_00050c3e + unaff_EBP" (pointer_expression "&UNK_00050c3e" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" else (compound_statement "{\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" { (expression_statement "puVar31 = &UNK_00050c02 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c02 + unaff_EBP" identifier = (binary_expression "&UNK_00050c02 + unaff_EBP" (pointer_expression "&UNK_00050c02" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) }))) (expression_statement "pvVar15 = (void *)FUN_0005da70();" (assignment_expression "pvVar15 = (void *)FUN_0005da70()" identifier = (cast_expression "(void *)FUN_0005da70()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0005da70()" identifier (argument_list "()" ( ))))) ;) (expression_statement "memset(pvVar15,0,local_e0);" (call_expression "memset(pvVar15,0,local_e0)" identifier (argument_list "(pvVar15,0,local_e0)" ( identifier , number_literal , identifier ))) ;) (if_statement "if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }" if (parenthesized_expression "(lVar28 != 0)" ( (binary_expression "lVar28 != 0" identifier != number_literal) )) (compound_statement "{\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }" { (expression_statement "local_ec = 0;" (assignment_expression "local_ec = 0" identifier = number_literal) ;) (do_statement "do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);" do (compound_statement "{\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          }" { (expression_statement "uVar21 = local_78[local_ec * 2];" (assignment_expression "uVar21 = local_78[local_ec * 2]" identifier = (subscript_expression "local_78[local_ec * 2]" identifier [ (binary_expression "local_ec * 2" identifier * number_literal) ])) ;) (expression_statement "uVar12 = local_78[local_ec * 2 + 1];" (assignment_expression "uVar12 = local_78[local_ec * 2 + 1]" identifier = (subscript_expression "local_78[local_ec * 2 + 1]" identifier [ (binary_expression "local_ec * 2 + 1" (binary_expression "local_ec * 2" identifier * number_literal) + number_literal) ])) ;) (if_statement "if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }" if (parenthesized_expression "(uVar12 != 0 || uVar21 != 0)" ( (binary_expression "uVar12 != 0 || uVar21 != 0" (binary_expression "uVar12 != 0" identifier != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) )) (compound_statement "{\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }" { (do_statement "do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);" do (compound_statement "{\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              }" { (expression_statement "FUN_00032a90();" (call_expression "FUN_00032a90()" identifier (argument_list "()" ( ))) ;) (if_statement "if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }" if (parenthesized_expression "((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0'))" ( (binary_expression "(uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')" (parenthesized_expression "(uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23)" ( (binary_expression "uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23" (binary_expression "uVar23 <= uVar12" identifier <= identifier) && (binary_expression "(uint)(uVar21 < local_e0) <= uVar12 - uVar23" (call_expression "(uint)(uVar21 < local_e0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar21 < local_e0)" ( (binary_expression "uVar21 < local_e0" identifier < identifier) ))) <= (binary_expression "uVar12 - uVar23" identifier - identifier))) )) || (parenthesized_expression "(*(char *)((int)pvVar15 + uVar21) != '\0')" ( (binary_expression "*(char *)((int)pvVar15 + uVar21) != '\0'" (pointer_expression "*(char *)((int)pvVar15 + uVar21)" * (cast_expression "(char *)((int)pvVar15 + uVar21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar15 + uVar21)" ( (binary_expression "(int)pvVar15 + uVar21" (cast_expression "(int)pvVar15" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                  dcgettext();\n                  error();\n                  break;\n                }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (break_statement "break;" break ;) })) (expression_statement "*(char *)((int)pvVar15 + uVar21) = '\x01';" (assignment_expression "*(char *)((int)pvVar15 + uVar21) = '\x01'" (pointer_expression "*(char *)((int)pvVar15 + uVar21)" * (cast_expression "(char *)((int)pvVar15 + uVar21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar15 + uVar21)" ( (binary_expression "(int)pvVar15 + uVar21" (cast_expression "(int)pvVar15" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);" (assignment_expression "uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_cc + uVar21 * 8 + 4)" * (cast_expression "(uint *)((int)local_cc + uVar21 * 8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_cc + uVar21 * 8 + 4)" ( (binary_expression "(int)local_cc + uVar21 * 8 + 4" (binary_expression "(int)local_cc + uVar21 * 8" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar21 * 8" identifier * number_literal)) + number_literal) ))))) ;) (expression_statement "uVar21 = *(uint *)((int)local_cc + uVar21 * 8);" (assignment_expression "uVar21 = *(uint *)((int)local_cc + uVar21 * 8)" identifier = (pointer_expression "*(uint *)((int)local_cc + uVar21 * 8)" * (cast_expression "(uint *)((int)local_cc + uVar21 * 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_cc + uVar21 * 8)" ( (binary_expression "(int)local_cc + uVar21 * 8" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar21 * 8" identifier * number_literal)) ))))) ;) }) while (parenthesized_expression "(uVar12 != 0 || uVar21 != 0)" ( (binary_expression "uVar12 != 0 || uVar21 != 0" (binary_expression "uVar12 != 0" identifier != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) )) ;) })) (expression_statement "local_ec = local_ec + 1;" (assignment_expression "local_ec = local_ec + 1" identifier = (binary_expression "local_ec + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_7c != local_ec)" ( (binary_expression "local_7c != local_ec" identifier != identifier) )) ;) })) (expression_statement "free(pvVar15);" (call_expression "free(pvVar15)" identifier (argument_list "(pvVar15)" ( identifier ))) ;) })) (if_statement "if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }" if (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0)" ( (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal)) )) (compound_statement "{\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }" { (expression_statement "puVar31 = &UNK_00050c82 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c82 + unaff_EBP" identifier = (binary_expression "&UNK_00050c82 + unaff_EBP" (pointer_expression "&UNK_00050c82" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" if (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" ( (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" * (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" " string_content ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" { (expression_statement "puVar31 = &UNK_00050c3e + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c3e + unaff_EBP" identifier = (binary_expression "&UNK_00050c3e + unaff_EBP" (pointer_expression "&UNK_00050c3e" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" else (compound_statement "{\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" { (expression_statement "puVar31 = &UNK_00050c02 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c02 + unaff_EBP" identifier = (binary_expression "&UNK_00050c02 + unaff_EBP" (pointer_expression "&UNK_00050c02" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) }))) (if_statement "if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }" if (parenthesized_expression "(local_50 != 0 || local_54 != 0)" ( (binary_expression "local_50 != 0 || local_54 != 0" (binary_expression "local_50 != 0" identifier != number_literal) || (binary_expression "local_54 != 0" identifier != number_literal)) )) (compound_statement "{\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }" { (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (do_statement "do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);" do (compound_statement "{\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          }" { (expression_statement "uVar23 = local_6c[uVar21 * 2];" (assignment_expression "uVar23 = local_6c[uVar21 * 2]" identifier = (subscript_expression "local_6c[uVar21 * 2]" identifier [ (binary_expression "uVar21 * 2" identifier * number_literal) ])) ;) (if_statement "if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }" if (parenthesized_expression "(local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0)" ( (binary_expression "local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0" (binary_expression "local_6c[uVar21 * 2 + 1] != 0" (subscript_expression "local_6c[uVar21 * 2 + 1]" identifier [ (binary_expression "uVar21 * 2 + 1" (binary_expression "uVar21 * 2" identifier * number_literal) + number_literal) ]) != number_literal) || (binary_expression "uVar23 != 0" identifier != number_literal)) )) (compound_statement "{\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }" { (expression_statement "uVar12 = uVar23 - local_8c;" (assignment_expression "uVar12 = uVar23 - local_8c" identifier = (binary_expression "uVar23 - local_8c" identifier - identifier)) ;) (expression_statement "uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);" (assignment_expression "uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c)" identifier = (binary_expression "(local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c)" (parenthesized_expression "(local_6c[uVar21 * 2 + 1] - local_88)" ( (binary_expression "local_6c[uVar21 * 2 + 1] - local_88" (subscript_expression "local_6c[uVar21 * 2 + 1]" identifier [ (binary_expression "uVar21 * 2 + 1" (binary_expression "uVar21 * 2" identifier * number_literal) + number_literal) ]) - identifier) )) - (call_expression "(uint)(uVar23 < local_8c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 < local_8c)" ( (binary_expression "uVar23 < local_8c" identifier < identifier) ))))) ;) (do_statement "do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);" do (compound_statement "{\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              }" { (expression_statement "FUN_00032a90();" (call_expression "FUN_00032a90()" identifier (argument_list "()" ( ))) ;) (if_statement "if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;" if (parenthesized_expression "(local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70)" ( (binary_expression "local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70" (binary_expression "local_70 <= uVar23" identifier <= identifier) && (binary_expression "(uint)(uVar12 < local_74) <= uVar23 - local_70" (call_expression "(uint)(uVar12 < local_74)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar12 < local_74)" ( (binary_expression "uVar12 < local_74" identifier < identifier) ))) <= (binary_expression "uVar23 - local_70" identifier - identifier))) )) (break_statement "break;" break ;)) (expression_statement "bVar25 = 0xfffffffe < uVar12;" (assignment_expression "bVar25 = 0xfffffffe < uVar12" identifier = (binary_expression "0xfffffffe < uVar12" number_literal < identifier)) ;) (expression_statement "uVar12 = uVar12 + 1;" (assignment_expression "uVar12 = uVar12 + 1" identifier = (binary_expression "uVar12 + 1" identifier + number_literal)) ;) (expression_statement "uVar23 = uVar23 + bVar25;" (assignment_expression "uVar23 = uVar23 + bVar25" identifier = (binary_expression "uVar23 + bVar25" identifier + identifier)) ;) }) while (parenthesized_expression "((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0)" ( (binary_expression "(*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0" (parenthesized_expression "(*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1)" ( (binary_expression "*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1" (pointer_expression "*(byte *)((int)local_90 + uVar12 * 8 + -8)" * (cast_expression "(byte *)((int)local_90 + uVar12 * 8 + -8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_90 + uVar12 * 8 + -8)" ( (binary_expression "(int)local_90 + uVar12 * 8 + -8" (binary_expression "(int)local_90 + uVar12 * 8" (cast_expression "(int)local_90" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar12 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) ;) })) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" identifier = (binary_expression "uVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_54 != uVar21)" ( (binary_expression "local_54 != uVar21" identifier != identifier) )) ;) })) })) (goto_statement "goto LAB_00033418;" goto statement_identifier ;) })) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_000341b6;" goto statement_identifier ;)) (labeled_statement "LAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);" statement_identifier : (expression_statement "local_ec = *(int *)(iVar9 + 0x5c);" (assignment_expression "local_ec = *(int *)(iVar9 + 0x5c)" identifier = (pointer_expression "*(int *)(iVar9 + 0x5c)" * (cast_expression "(int *)(iVar9 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x5c)" ( (binary_expression "iVar9 + 0x5c" identifier + number_literal) ))))) ;)) (if_statement "if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }" if (parenthesized_expression "(local_ec != 0)" ( (binary_expression "local_ec != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }" { (labeled_statement "LAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }" statement_identifier : (if_statement "if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }" if (parenthesized_expression "(*(int *)(iVar9 + 0x54) != 0)" ( (binary_expression "*(int *)(iVar9 + 0x54) != 0" (pointer_expression "*(int *)(iVar9 + 0x54)" * (cast_expression "(int *)(iVar9 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x54)" ( (binary_expression "iVar9 + 0x54" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }" { (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (expression_statement "puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);" (assignment_expression "puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" identifier = (pointer_expression "*(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" * (cast_expression "(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" ( (binary_expression "" Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6" (binary_expression "" Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP" (string_literal "" Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (do_statement "do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));" do (compound_statement "{\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        }" { (expression_statement "iVar10 = *(int *)(local_ec + 4);" (assignment_expression "iVar10 = *(int *)(local_ec + 4)" identifier = (pointer_expression "*(int *)(local_ec + 4)" * (cast_expression "(int *)(local_ec + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 4)" ( (binary_expression "local_ec + 4" identifier + number_literal) ))))) ;) (if_statement "if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }" if (parenthesized_expression "(((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2))))" ( (binary_expression "((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))" (parenthesized_expression "((iVar10 == 2) || (iVar10 == 0xb))" ( (binary_expression "(iVar10 == 2) || (iVar10 == 0xb)" (parenthesized_expression "(iVar10 == 2)" ( (binary_expression "iVar10 == 2" identifier == number_literal) )) || (parenthesized_expression "(iVar10 == 0xb)" ( (binary_expression "iVar10 == 0xb" identifier == number_literal) ))) )) && (parenthesized_expression "((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))" ( (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2))" ( (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)" (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (parenthesized_expression "(iVar10 != 2)" ( (binary_expression "iVar10 != 2" identifier != number_literal) ))) )) ))) )) (compound_statement "{\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }" { (expression_statement "iVar10 = *(int *)(local_ec + 0x38);" (assignment_expression "iVar10 = *(int *)(local_ec + 0x38)" identifier = (pointer_expression "*(int *)(local_ec + 0x38)" * (cast_expression "(int *)(local_ec + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 0x38)" ( (binary_expression "local_ec + 0x38" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" if (parenthesized_expression "(*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0)" ( (binary_expression "*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0" (binary_expression "*(int *)(local_ec + 0x3c) == 0" (pointer_expression "*(int *)(local_ec + 0x3c)" * (cast_expression "(int *)(local_ec + 0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 0x3c)" ( (binary_expression "local_ec + 0x3c" identifier + number_literal) )))) == number_literal) && (binary_expression "iVar10 == 0" identifier == number_literal)) )) (compound_statement "{\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }" { (expression_statement "uVar32 = FUN_00022190();" (assignment_expression "uVar32 = FUN_00022190()" identifier = (call_expression "FUN_00022190()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar19 = 5;" (assignment_expression "uVar19 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,uVar32,uVar19);" (call_expression "printf(pcVar17,uVar32,uVar19)" identifier (argument_list "(pcVar17,uVar32,uVar19)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" else (compound_statement "{\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" { (expression_statement "uVar32 = *(undefined4 *)(local_ec + 0x24);" (assignment_expression "uVar32 = *(undefined4 *)(local_ec + 0x24)" identifier = (pointer_expression "*(undefined4 *)(local_ec + 0x24)" * (cast_expression "(undefined4 *)(local_ec + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 0x24)" ( (binary_expression "local_ec + 0x24" identifier + number_literal) ))))) ;) (expression_statement "uVar21 = FUN_0006b250();" (assignment_expression "uVar21 = FUN_0006b250()" identifier = (call_expression "FUN_0006b250()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_34[0] = uVar21;" (assignment_expression "local_34[0] = uVar21" (subscript_expression "local_34[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar19 = FUN_00022190();" (assignment_expression "uVar19 = FUN_00022190()" identifier = (call_expression "FUN_00022190()" identifier (argument_list "()" ( )))) ;) (expression_statement "pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);" (assignment_expression "pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" identifier = (cast_expression "(char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" identifier (argument_list "(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" ( number_literal , (binary_expression "&UNK_00050d0a + unaff_EBP" (pointer_expression "&UNK_00050d0a" & identifier) + identifier) , (binary_expression "&UNK_00050cde + unaff_EBP" (pointer_expression "&UNK_00050cde" & identifier) + identifier) , (subscript_expression "local_34[0]" identifier [ number_literal ]) , number_literal , identifier , identifier ))))) ;) (expression_statement "printf(pcVar17,uVar19,uVar21);" (call_expression "printf(pcVar17,uVar19,uVar21)" identifier (argument_list "(pcVar17,uVar19,uVar21)" ( identifier , identifier , identifier ))) ;) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" if (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" ( (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" * (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" " string_content ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" { (expression_statement "puVar31 = &UNK_00050d6e + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050d6e + unaff_EBP" identifier = (binary_expression "&UNK_00050d6e + unaff_EBP" (pointer_expression "&UNK_00050d6e" & identifier) + identifier)) ;) (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar21);" (call_expression "printf(pcVar17,puVar31,uVar21)" identifier (argument_list "(pcVar17,puVar31,uVar21)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" else (compound_statement "{\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" { (expression_statement "puVar31 = &UNK_00050d32 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050d32 + unaff_EBP" identifier = (binary_expression "&UNK_00050d32 + unaff_EBP" (pointer_expression "&UNK_00050d32" & identifier) + identifier)) ;) (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar21);" (call_expression "printf(pcVar17,puVar31,uVar21)" identifier (argument_list "(pcVar17,puVar31,uVar21)" ( identifier , identifier , identifier ))) ;) }))) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }" if (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" ( (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" * (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" " string_content ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n                local_80 = (void *)FUN_00022830();\n              }" { (expression_statement "local_80 = (void *)FUN_00022830();" (assignment_expression "local_80 = (void *)FUN_00022830()" identifier = (cast_expression "(void *)FUN_00022830()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00022830()" identifier (argument_list "()" ( ))))) ;) }) (else_clause "else {\n                local_80 = (void *)FUN_000222e0();\n              }" else (compound_statement "{\n                local_80 = (void *)FUN_000222e0();\n              }" { (expression_statement "local_80 = (void *)FUN_000222e0();" (assignment_expression "local_80 = (void *)FUN_000222e0()" identifier = (cast_expression "(void *)FUN_000222e0()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000222e0()" identifier (argument_list "()" ( ))))) ;) }))) (if_statement "if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }" if (parenthesized_expression "(local_80 != (void *)0x0)" ( (binary_expression "local_80 != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }" { (expression_statement "uVar23 = *(uint *)(local_ec + 0x28);" (assignment_expression "uVar23 = *(uint *)(local_ec + 0x28)" identifier = (pointer_expression "*(uint *)(local_ec + 0x28)" * (cast_expression "(uint *)(local_ec + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 0x28)" ( (binary_expression "local_ec + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }" if (parenthesized_expression "(uVar23 == *(uint *)(iVar9 + 0x58))" ( (binary_expression "uVar23 == *(uint *)(iVar9 + 0x58)" identifier == (pointer_expression "*(uint *)(iVar9 + 0x58)" * (cast_expression "(uint *)(iVar9 + 0x58)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x58)" ( (binary_expression "iVar9 + 0x58" identifier + number_literal) ))))) )) (compound_statement "{\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }" { (expression_statement "local_bc = *(void **)(iVar9 + 100);" (assignment_expression "local_bc = *(void **)(iVar9 + 100)" identifier = (pointer_expression "*(void **)(iVar9 + 100)" * (cast_expression "(void **)(iVar9 + 100)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 100)" ( (binary_expression "iVar9 + 100" identifier + number_literal) ))))) ;) (expression_statement "local_d4 = *(uint *)(iVar9 + 0x68);" (assignment_expression "local_d4 = *(uint *)(iVar9 + 0x68)" identifier = (pointer_expression "*(uint *)(iVar9 + 0x68)" * (cast_expression "(uint *)(iVar9 + 0x68)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x68)" ( (binary_expression "iVar9 + 0x68" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }" else (compound_statement "{\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }" { (expression_statement "local_d4 = 0;" (assignment_expression "local_d4 = 0" identifier = number_literal) ;) (expression_statement "local_bc = (void *)0x0;" (assignment_expression "local_bc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }" if (parenthesized_expression "(uVar23 < *(uint *)(iVar9 + 0x54))" ( (binary_expression "uVar23 < *(uint *)(iVar9 + 0x54)" identifier < (pointer_expression "*(uint *)(iVar9 + 0x54)" * (cast_expression "(uint *)(iVar9 + 0x54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x54)" ( (binary_expression "iVar9 + 0x54" identifier + number_literal) ))))) )) (compound_statement "{\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }" { (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" identifier = number_literal) ;) (expression_statement "iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;" (assignment_expression "iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48" identifier = (binary_expression "*(int *)(iVar9 + 0x5c) + uVar23 * 0x48" (pointer_expression "*(int *)(iVar9 + 0x5c)" * (cast_expression "(int *)(iVar9 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x5c)" ( (binary_expression "iVar9 + 0x5c" identifier + number_literal) )))) + (binary_expression "uVar23 * 0x48" identifier * number_literal))) ;) (expression_statement "iVar10 = unaff_EBP + 0x45491;" (assignment_expression "iVar10 = unaff_EBP + 0x45491" identifier = (binary_expression "unaff_EBP + 0x45491" identifier + number_literal)) ;) (expression_statement "uVar32 = dcgettext();" (assignment_expression "uVar32 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);" (assignment_expression "local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" identifier = (cast_expression "(void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" identifier (argument_list "(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" ( number_literal , number_literal , (pointer_expression "*(undefined4 *)(iVar2 + 0x20)" * (cast_expression "(undefined4 *)(iVar2 + 0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(iVar2 + 0x24)" * (cast_expression "(undefined4 *)(iVar2 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x24)" ( (binary_expression "iVar2 + 0x24" identifier + number_literal) )))) , identifier , identifier , identifier ))))) ;) (if_statement "if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }" if (parenthesized_expression "(local_bc != (void *)0x0)" ( (binary_expression "local_bc != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }" { (expression_statement "local_d4 = *(uint *)(iVar2 + 0x20);" (assignment_expression "local_d4 = *(uint *)(iVar2 + 0x20)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x20)" * (cast_expression "(uint *)(iVar2 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) ))))) ;) })) })) }))) (if_statement "if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }" if (parenthesized_expression "(local_34[0] != 0)" ( (binary_expression "local_34[0] != 0" (subscript_expression "local_34[0]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }" { (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;) (expression_statement "puVar18 = (uint *)((int)local_80 + 0x10);" (assignment_expression "puVar18 = (uint *)((int)local_80 + 0x10)" identifier = (cast_expression "(uint *)((int)local_80 + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_80 + 0x10)" ( (binary_expression "(int)local_80 + 0x10" (cast_expression "(int)local_80" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pcVar17 = (char *)(unaff_EBP + 0x48ecf);" (assignment_expression "pcVar17 = (char *)(unaff_EBP + 0x48ecf)" identifier = (cast_expression "(char *)(unaff_EBP + 0x48ecf)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48ecf)" ( (binary_expression "unaff_EBP + 0x48ecf" identifier + number_literal) )))) ;) (do_statement "do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);" do (compound_statement "{\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  }" { (expression_statement "printf(&UNK_00048f32 + unaff_EBP,uVar23);" (call_expression "printf(&UNK_00048f32 + unaff_EBP,uVar23)" identifier (argument_list "(&UNK_00048f32 + unaff_EBP,uVar23)" ( (binary_expression "&UNK_00048f32 + unaff_EBP" (pointer_expression "&UNK_00048f32" & identifier) + identifier) , identifier ))) ;) (expression_statement "FUN_0001e910();" (call_expression "FUN_0001e910()" identifier (argument_list "()" ( ))) ;) (expression_statement "putc(0x20,(FILE *)*puVar1);" (call_expression "putc(0x20,(FILE *)*puVar1)" identifier (argument_list "(0x20,(FILE *)*puVar1)" ( number_literal , (cast_expression "(FILE *)*puVar1" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier)) ))) ;) (expression_statement "FUN_0001e910();" (call_expression "FUN_0001e910()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar32 = FUN_00023ff0();" (assignment_expression "uVar32 = FUN_00023ff0()" identifier = (call_expression "FUN_00023ff0()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(pcVar17,uVar32);" (call_expression "printf(pcVar17,uVar32)" identifier (argument_list "(pcVar17,uVar32)" ( identifier , identifier ))) ;) (expression_statement "uVar32 = FUN_00025a40();" (assignment_expression "uVar32 = FUN_00025a40()" identifier = (call_expression "FUN_00025a40()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf((char *)(unaff_EBP + 0x48ed5),uVar32);" (call_expression "printf((char *)(unaff_EBP + 0x48ed5),uVar32)" identifier (argument_list "((char *)(unaff_EBP + 0x48ed5),uVar32)" ( (cast_expression "(char *)(unaff_EBP + 0x48ed5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48ed5)" ( (binary_expression "unaff_EBP + 0x48ed5" identifier + number_literal) ))) , identifier ))) ;) (if_statement "if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }" if (parenthesized_expression "(*(char *)(iVar9 + 0x17) == '\x06')" ( (binary_expression "*(char *)(iVar9 + 0x17) == '\x06'" (pointer_expression "*(char *)(iVar9 + 0x17)" * (cast_expression "(char *)(iVar9 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x17)" ( (binary_expression "iVar9 + 0x17" identifier + number_literal) )))) == (char_literal "'\x06'" ' escape_sequence ')) )) (compound_statement "{\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }" { (expression_statement "uVar32 = FUN_00023de0();" (assignment_expression "uVar32 = FUN_00023de0()" identifier = (call_expression "FUN_00023de0()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(pcVar17,uVar32);" (call_expression "printf(pcVar17,uVar32)" identifier (argument_list "(pcVar17,uVar32)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }" else (compound_statement "{\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }" { (expression_statement "bVar4 = *(byte *)((int)puVar18 + 5);" (assignment_expression "bVar4 = *(byte *)((int)puVar18 + 5)" identifier = (pointer_expression "*(byte *)((int)puVar18 + 5)" * (cast_expression "(byte *)((int)puVar18 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar18 + 5)" ( (binary_expression "(int)puVar18 + 5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "uVar32 = FUN_00023d60();" (assignment_expression "uVar32 = FUN_00023d60()" identifier = (call_expression "FUN_00023d60()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(pcVar17,uVar32);" (call_expression "printf(pcVar17,uVar32)" identifier (argument_list "(pcVar17,uVar32)" ( identifier , identifier ))) ;) (if_statement "if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }" if (parenthesized_expression "(*(byte *)((int)puVar18 + 5) != (bVar4 & 3))" ( (binary_expression "*(byte *)((int)puVar18 + 5) != (bVar4 & 3)" (pointer_expression "*(byte *)((int)puVar18 + 5)" * (cast_expression "(byte *)((int)puVar18 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar18 + 5)" ( (binary_expression "(int)puVar18 + 5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (parenthesized_expression "(bVar4 & 3)" ( (binary_expression "bVar4 & 3" identifier & number_literal) ))) )) (compound_statement "{\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }" { (expression_statement "uVar32 = FUN_00032810();" (assignment_expression "uVar32 = FUN_00032810()" identifier = (call_expression "FUN_00032810()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf((char *)(unaff_EBP + 0x48edb),uVar32);" (call_expression "printf((char *)(unaff_EBP + 0x48edb),uVar32)" identifier (argument_list "((char *)(unaff_EBP + 0x48edb),uVar32)" ( (cast_expression "(char *)(unaff_EBP + 0x48edb)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48edb)" ( (binary_expression "unaff_EBP + 0x48edb" identifier + number_literal) ))) , identifier ))) ;) })) }))) (expression_statement "uVar32 = FUN_00023e70();" (assignment_expression "uVar32 = FUN_00023e70()" identifier = (call_expression "FUN_00023e70()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(&UNK_00048f38 + unaff_EBP,uVar32);" (call_expression "printf(&UNK_00048f38 + unaff_EBP,uVar32)" identifier (argument_list "(&UNK_00048f38 + unaff_EBP,uVar32)" ( (binary_expression "&UNK_00048f38 + unaff_EBP" (pointer_expression "&UNK_00048f38" & identifier) + identifier) , identifier ))) ;) (if_statement "if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }" if (parenthesized_expression "(local_d4 <= *puVar18)" ( (binary_expression "local_d4 <= *puVar18" identifier <= (pointer_expression "*puVar18" * identifier)) )) (compound_statement "{\n                      uVar21 = 5;\n                      dcgettext();\n                    }" { (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" identifier = number_literal) ;) (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_0001fd20();" (call_expression "FUN_0001fd20()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);" (assignment_expression "iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21)" identifier = (call_expression "FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21)" identifier (argument_list "(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21)" ( identifier , identifier , identifier , (binary_expression "puVar18 + 2" identifier + number_literal) , identifier , (pointer_expression "&local_36" & identifier) , identifier )))) ;) (if_statement "if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }" { (if_statement "if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }" if (parenthesized_expression "(local_2c[0] == 0)" ( (binary_expression "local_2c[0] == 0" (subscript_expression "local_2c[0]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }" { (expression_statement "uVar21 = (uint)local_36;" (assignment_expression "uVar21 = (uint)local_36" identifier = (cast_expression "(uint)local_36" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "printf((char *)(unaff_EBP + 0x48f3e),iVar10);" (call_expression "printf((char *)(unaff_EBP + 0x48f3e),iVar10)" identifier (argument_list "((char *)(unaff_EBP + 0x48f3e),iVar10)" ( (cast_expression "(char *)(unaff_EBP + 0x48f3e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48f3e)" ( (binary_expression "unaff_EBP + 0x48f3e" identifier + number_literal) ))) , identifier ))) ;) }) (else_clause "else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }" else (compound_statement "{\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }" { (expression_statement "__format = (char *)(unaff_EBP + 0x48d63);" (assignment_expression "__format = (char *)(unaff_EBP + 0x48d63)" identifier = (cast_expression "(char *)(unaff_EBP + 0x48d63)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48d63)" ( (binary_expression "unaff_EBP + 0x48d63" identifier + number_literal) )))) ;) (if_statement "if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }" if (parenthesized_expression "(local_2c[0] != 1)" ( (binary_expression "local_2c[0] != 1" (subscript_expression "local_2c[0]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }" { (expression_statement "__format = (char *)(unaff_EBP + 0x48d62);" (assignment_expression "__format = (char *)(unaff_EBP + 0x48d62)" identifier = (cast_expression "(char *)(unaff_EBP + 0x48d62)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48d62)" ( (binary_expression "unaff_EBP + 0x48d62" identifier + number_literal) )))) ;) })) (expression_statement "printf(__format,iVar10);" (call_expression "printf(__format,iVar10)" identifier (argument_list "(__format,iVar10)" ( identifier , identifier ))) ;) }))) })) (expression_statement "putc(10,(FILE *)*puVar1);" (call_expression "putc(10,(FILE *)*puVar1)" identifier (argument_list "(10,(FILE *)*puVar1)" ( number_literal , (cast_expression "(FILE *)*puVar1" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier)) ))) ;) (if_statement "if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }" if (parenthesized_expression "(((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06'))" ( (binary_expression "((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')" (parenthesized_expression "((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8))" ( (binary_expression "(((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)" (parenthesized_expression "(((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23))" ( (binary_expression "((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)" (parenthesized_expression "((byte)((byte)puVar18[1] >> 4) == 0)" ( (binary_expression "(byte)((byte)puVar18[1] >> 4) == 0" (call_expression "(byte)((byte)puVar18[1] >> 4)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((byte)puVar18[1] >> 4)" ( (binary_expression "(byte)puVar18[1] >> 4" (cast_expression "(byte)puVar18[1]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "puVar18[1]" identifier [ number_literal ])) >> number_literal) ))) == number_literal) )) && (parenthesized_expression "(uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)" ( (comma_expression "uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23" (assignment_expression "uVar12 = *(uint *)(local_ec + 0x2c)" identifier = (pointer_expression "*(uint *)(local_ec + 0x2c)" * (cast_expression "(uint *)(local_ec + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 0x2c)" ( (binary_expression "local_ec + 0x2c" identifier + number_literal) ))))) , (binary_expression "uVar12 <= uVar23" identifier <= identifier)) ))) )) && (parenthesized_expression "(*(short *)(iVar9 + 0x42) != 8)" ( (binary_expression "*(short *)(iVar9 + 0x42) != 8" (pointer_expression "*(short *)(iVar9 + 0x42)" * (cast_expression "(short *)(iVar9 + 0x42)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x42)" ( (binary_expression "iVar9 + 0x42" identifier + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(*(char *)(iVar9 + 0x17) != '\x06')" ( (binary_expression "*(char *)(iVar9 + 0x17) != '\x06'" (pointer_expression "*(char *)(iVar9 + 0x17)" * (cast_expression "(char *)(iVar9 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x17)" ( (binary_expression "iVar9 + 0x17" identifier + number_literal) )))) != (char_literal "'\x06'" ' escape_sequence ')) ))) )) (compound_statement "{\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }" { (expression_statement "uVar32 = FUN_00022190();" (assignment_expression "uVar32 = FUN_00022190()" identifier = (call_expression "FUN_00022190()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar31 = &UNK_00050db2 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050db2 + unaff_EBP" identifier = (binary_expression "&UNK_00050db2 + unaff_EBP" (pointer_expression "&UNK_00050db2" & identifier) + identifier)) ;) (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" identifier = number_literal) ;) (expression_statement "uVar30 = 0;" (assignment_expression "uVar30 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = dcgettext();" (assignment_expression "uVar19 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);" (call_expression "warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31)" identifier (argument_list "(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31)" ( identifier , identifier , identifier , identifier , identifier , identifier ))) ;) })) (expression_statement "uVar23 = uVar23 + 1;" (assignment_expression "uVar23 = uVar23 + 1" identifier = (binary_expression "uVar23 + 1" identifier + number_literal)) ;) (expression_statement "puVar18 = puVar18 + 7;" (assignment_expression "puVar18 = puVar18 + 7" identifier = (binary_expression "puVar18 + 7" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar23 < local_34[0])" ( (binary_expression "uVar23 < local_34[0]" identifier < (subscript_expression "local_34[0]" identifier [ number_literal ])) )) ;) })) (expression_statement "free(local_80);" (call_expression "free(local_80)" identifier (argument_list "(local_80)" ( identifier ))) ;) (if_statement "if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }" if (parenthesized_expression "(*(void **)(iVar9 + 100) != local_bc)" ( (binary_expression "*(void **)(iVar9 + 100) != local_bc" (pointer_expression "*(void **)(iVar9 + 100)" * (cast_expression "(void **)(iVar9 + 100)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 100)" ( (binary_expression "iVar9 + 100" identifier + number_literal) )))) != identifier) )) (compound_statement "{\n                  free(local_bc);\n                }" { (expression_statement "free(local_bc);" (call_expression "free(local_bc)" identifier (argument_list "(local_bc)" ( identifier ))) ;) })) })) }))) })) (expression_statement "local_b0 = local_b0 + 1;" (assignment_expression "local_b0 = local_b0 + 1" identifier = (binary_expression "local_b0 + 1" identifier + number_literal)) ;) (expression_statement "local_ec = local_ec + 0x48;" (assignment_expression "local_ec = local_ec + 0x48" identifier = (binary_expression "local_ec + 0x48" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_b0 < *(uint *)(iVar9 + 0x54))" ( (binary_expression "local_b0 < *(uint *)(iVar9 + 0x54)" identifier < (pointer_expression "*(uint *)(iVar9 + 0x54)" * (cast_expression "(uint *)(iVar9 + 0x54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x54)" ( (binary_expression "iVar9 + 0x54" identifier + number_literal) ))))) )) ;) }))) (goto_statement "goto LAB_00033418;" goto statement_identifier ;) })) (if_statement "if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;" if (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_00033418;" goto statement_identifier ;)) (labeled_statement "LAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;" statement_identifier : (expression_statement "puVar31 = &UNK_00050dee + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050dee + unaff_EBP" identifier = (binary_expression "&UNK_00050dee + unaff_EBP" (pointer_expression "&UNK_00050dee" & identifier) + identifier)) ;)) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" (assignment_expression "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" identifier = (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (iVar9 == 0) goto LAB_000337f0;" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000337f0;" goto statement_identifier ;)) (labeled_statement "LAB_00033426:\n    local_7c = (size_t)lVar28;" statement_identifier : (expression_statement "local_7c = (size_t)lVar28;" (assignment_expression "local_7c = (size_t)lVar28" identifier = (cast_expression "(size_t)lVar28" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;)) (expression_statement "uVar21 = (uint)((ulonglong)lVar29 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)lVar29 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar29 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_e0 = (uint)lVar29;" (assignment_expression "local_e0 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }" if (parenthesized_expression "(local_78 != (uint *)0x0)" ( (binary_expression "local_78 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }" { (expression_statement "pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);" (assignment_expression "pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" identifier = (cast_expression "(char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" identifier (argument_list "(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" ( number_literal , (binary_expression "&UNK_00050e72 + unaff_EBP" (pointer_expression "&UNK_00050e72" & identifier) + identifier) , (binary_expression "&UNK_00050e36 + unaff_EBP" (pointer_expression "&UNK_00050e36" & identifier) + identifier) , identifier ))))) ;) (expression_statement "printf(pcVar17,local_7c);" (call_expression "printf(pcVar17,local_7c)" identifier (argument_list "(pcVar17,local_7c)" ( identifier , identifier ))) ;) (expression_statement "puVar18 = (uint *)calloc(local_7c,4);" (assignment_expression "puVar18 = (uint *)calloc(local_7c,4)" identifier = (cast_expression "(uint *)calloc(local_7c,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(local_7c,4)" identifier (argument_list "(local_7c,4)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar18 == (uint *)0x0) goto LAB_00034166;" if (parenthesized_expression "(puVar18 == (uint *)0x0)" ( (binary_expression "puVar18 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00034166;" goto statement_identifier ;)) (expression_statement "pvVar15 = (void *)FUN_0005da70();" (assignment_expression "pvVar15 = (void *)FUN_0005da70()" identifier = (cast_expression "(void *)FUN_0005da70()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0005da70()" identifier (argument_list "()" ( ))))) ;) (expression_statement "memset(pvVar15,0,local_e0);" (call_expression "memset(pvVar15,0,local_e0)" identifier (argument_list "(pvVar15,0,local_e0)" ( identifier , number_literal , identifier ))) ;) (expression_statement "puVar31 = &UNK_00050ee6 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050ee6 + unaff_EBP" identifier = (binary_expression "&UNK_00050ee6 + unaff_EBP" (pointer_expression "&UNK_00050ee6" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }" if (parenthesized_expression "(lVar28 == 0)" ( (binary_expression "lVar28 == 0" identifier == number_literal) )) (compound_statement "{\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }" { (expression_statement "free(pvVar15);" (call_expression "free(pvVar15)" identifier (argument_list "(pvVar15)" ( identifier ))) ;) (expression_statement "puVar13 = (uint *)calloc(1,4);" (assignment_expression "puVar13 = (uint *)calloc(1,4)" identifier = (cast_expression "(uint *)calloc(1,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(1,4)" identifier (argument_list "(1,4)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar13 == (uint *)0x0) goto LAB_00034764;" if (parenthesized_expression "(puVar13 == (uint *)0x0)" ( (binary_expression "puVar13 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00034764;" goto statement_identifier ;)) }) (else_clause "else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }" else (compound_statement "{\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }" { (expression_statement "local_c4 = local_78;" (assignment_expression "local_c4 = local_78" identifier = identifier) ;) (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) (expression_statement "local_b4 = puVar18;" (assignment_expression "local_b4 = puVar18" identifier = identifier) ;) (do_statement "do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);" do (compound_statement "{\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        }" { (expression_statement "uVar24 = local_c4[1];" (assignment_expression "uVar24 = local_c4[1]" identifier = (subscript_expression "local_c4[1]" identifier [ number_literal ])) ;) (if_statement "if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }" if (parenthesized_expression "(uVar24 == 0 && *local_c4 == 0)" ( (binary_expression "uVar24 == 0 && *local_c4 == 0" (binary_expression "uVar24 == 0" identifier == number_literal) && (binary_expression "*local_c4 == 0" (pointer_expression "*local_c4" * identifier) == number_literal)) )) (compound_statement "{\n            local_f4 = (uint *)(uVar23 + 1);\n          }" { (expression_statement "local_f4 = (uint *)(uVar23 + 1);" (assignment_expression "local_f4 = (uint *)(uVar23 + 1)" identifier = (cast_expression "(uint *)(uVar23 + 1)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar23 + 1)" ( (binary_expression "uVar23 + 1" identifier + number_literal) )))) ;) }) (else_clause "else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }" else (compound_statement "{\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }" { (expression_statement "uVar22 = *local_b4;" (assignment_expression "uVar22 = *local_b4" identifier = (pointer_expression "*local_b4" * identifier)) ;) (expression_statement "iVar9 = uVar12 - uVar22;" (assignment_expression "iVar9 = uVar12 - uVar22" identifier = (binary_expression "uVar12 - uVar22" identifier - identifier)) ;) (expression_statement "uVar16 = *local_c4;" (assignment_expression "uVar16 = *local_c4" identifier = (pointer_expression "*local_c4" * identifier)) ;) (do_statement "do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);" do (compound_statement "{\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            }" { (expression_statement "uVar22 = uVar22 + 1;" (assignment_expression "uVar22 = uVar22 + 1" identifier = (binary_expression "uVar22 + 1" identifier + number_literal)) ;) (expression_statement "uVar12 = iVar9 + uVar22;" (assignment_expression "uVar12 = iVar9 + uVar22" identifier = (binary_expression "iVar9 + uVar22" identifier + identifier)) ;) (expression_statement "local_f4 = (uint *)(uVar23 + 1);" (assignment_expression "local_f4 = (uint *)(uVar23 + 1)" identifier = (cast_expression "(uint *)(uVar23 + 1)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar23 + 1)" ( (binary_expression "uVar23 + 1" identifier + number_literal) )))) ;) (if_statement "if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }" if (parenthesized_expression "(uVar23 < uVar22)" ( (binary_expression "uVar23 < uVar22" identifier < identifier) )) (compound_statement "{\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }" { (expression_statement "local_f4 = (uint *)(uVar23 + 2);" (assignment_expression "local_f4 = (uint *)(uVar23 + 2)" identifier = (cast_expression "(uint *)(uVar23 + 2)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar23 + 2)" ( (binary_expression "uVar23 + 2" identifier + number_literal) )))) ;) (expression_statement "uVar23 = uVar23 + 1;" (assignment_expression "uVar23 = uVar23 + 1" identifier = (binary_expression "uVar23 + 1" identifier + number_literal)) ;) })) (if_statement "if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }" if (parenthesized_expression "((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0'))" ( (binary_expression "(uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')" (parenthesized_expression "(uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21)" ( (binary_expression "uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21" (binary_expression "uVar21 <= uVar24" identifier <= identifier) && (binary_expression "(uint)(uVar16 < local_e0) <= uVar24 - uVar21" (call_expression "(uint)(uVar16 < local_e0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar16 < local_e0)" ( (binary_expression "uVar16 < local_e0" identifier < identifier) ))) <= (binary_expression "uVar24 - uVar21" identifier - identifier))) )) || (parenthesized_expression "(*(char *)((int)pvVar15 + uVar16) != '\0')" ( (binary_expression "*(char *)((int)pvVar15 + uVar16) != '\0'" (pointer_expression "*(char *)((int)pvVar15 + uVar16)" * (cast_expression "(char *)((int)pvVar15 + uVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar15 + uVar16)" ( (binary_expression "(int)pvVar15 + uVar16" (cast_expression "(int)pvVar15" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }" { (expression_statement "*local_b4 = uVar22;" (assignment_expression "*local_b4 = uVar22" (pointer_expression "*local_b4" * identifier) = identifier) ;) (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_000335a5;" goto statement_identifier ;) })) (expression_statement "*(char *)((int)pvVar15 + uVar16) = '\x01';" (assignment_expression "*(char *)((int)pvVar15 + uVar16) = '\x01'" (pointer_expression "*(char *)((int)pvVar15 + uVar16)" * (cast_expression "(char *)((int)pvVar15 + uVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar15 + uVar16)" ( (binary_expression "(int)pvVar15 + uVar16" (cast_expression "(int)pvVar15" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "uVar6 = *(uint *)((int)local_cc + uVar16 * 8);" (assignment_expression "uVar6 = *(uint *)((int)local_cc + uVar16 * 8)" identifier = (pointer_expression "*(uint *)((int)local_cc + uVar16 * 8)" * (cast_expression "(uint *)((int)local_cc + uVar16 * 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_cc + uVar16 * 8)" ( (binary_expression "(int)local_cc + uVar16 * 8" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar16 * 8" identifier * number_literal)) ))))) ;) (expression_statement "uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);" (assignment_expression "uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_cc + uVar16 * 8 + 4)" * (cast_expression "(uint *)((int)local_cc + uVar16 * 8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_cc + uVar16 * 8 + 4)" ( (binary_expression "(int)local_cc + uVar16 * 8 + 4" (binary_expression "(int)local_cc + uVar16 * 8" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar16 * 8" identifier * number_literal)) + number_literal) ))))) ;) (expression_statement "uVar16 = uVar6;" (assignment_expression "uVar16 = uVar6" identifier = identifier) ;) }) while (parenthesized_expression "(uVar24 != 0 || uVar6 != 0)" ( (binary_expression "uVar24 != 0 || uVar6 != 0" (binary_expression "uVar24 != 0" identifier != number_literal) || (binary_expression "uVar6 != 0" identifier != number_literal)) )) ;) (expression_statement "*local_b4 = uVar22;" (assignment_expression "*local_b4 = uVar22" (pointer_expression "*local_b4" * identifier) = identifier) ;) }))) (labeled_statement "LAB_000335a5:\n          local_c4 = local_c4 + 2;" statement_identifier : (expression_statement "local_c4 = local_c4 + 2;" (assignment_expression "local_c4 = local_c4 + 2" identifier = (binary_expression "local_c4 + 2" identifier + number_literal)) ;)) (expression_statement "local_b4 = local_b4 + 1;" (assignment_expression "local_b4 = local_b4 + 1" identifier = (binary_expression "local_b4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_78 + local_7c * 2 != local_c4)" ( (binary_expression "local_78 + local_7c * 2 != local_c4" (binary_expression "local_78 + local_7c * 2" identifier + (binary_expression "local_7c * 2" identifier * number_literal)) != identifier) )) ;) (expression_statement "free(pvVar15);" (call_expression "free(pvVar15)" identifier (argument_list "(pvVar15)" ( identifier ))) ;) (expression_statement "puVar13 = (uint *)calloc((size_t)local_f4,4);" (assignment_expression "puVar13 = (uint *)calloc((size_t)local_f4,4)" identifier = (cast_expression "(uint *)calloc((size_t)local_f4,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc((size_t)local_f4,4)" identifier (argument_list "((size_t)local_f4,4)" ( (cast_expression "(size_t)local_f4" ( (type_descriptor "size_t" primitive_type) ) identifier) , number_literal ))))) ;) (if_statement "if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }" if (parenthesized_expression "(puVar13 == (uint *)0x0)" ( (binary_expression "puVar13 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }" { (labeled_statement "LAB_00034764:\n          free(puVar18);" statement_identifier : (expression_statement "free(puVar18);" (call_expression "free(puVar18)" identifier (argument_list "(puVar18)" ( identifier ))) ;)) (goto_statement "goto LAB_00034166;" goto statement_identifier ;) })) (expression_statement "puVar14 = puVar18;" (assignment_expression "puVar14 = puVar18" identifier = identifier) ;) (do_statement "do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);" do (compound_statement "{\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        }" { (expression_statement "uVar21 = *puVar14;" (assignment_expression "uVar21 = *puVar14" identifier = (pointer_expression "*puVar14" * identifier)) ;) (expression_statement "puVar14 = puVar14 + 1;" (assignment_expression "puVar14 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) (expression_statement "puVar13[uVar21] = puVar13[uVar21] + 1;" (assignment_expression "puVar13[uVar21] = puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" identifier [ identifier ]) = (binary_expression "puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" identifier [ identifier ]) + number_literal)) ;) }) while (parenthesized_expression "(puVar18 + local_7c != puVar14)" ( (binary_expression "puVar18 + local_7c != puVar14" (binary_expression "puVar18 + local_7c" identifier + identifier) != identifier) )) ;) (expression_statement "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;" (assignment_expression "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c" identifier = (binary_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c" (parenthesized_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(double)*puVar13" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*puVar13" * identifier)) * (cast_expression "(double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) )))))) )) / (cast_expression "(double)(int)local_7c" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_7c" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) (expression_statement "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );" (call_expression "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" identifier (argument_list "((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" ( (cast_expression "(char *)(unaff_EBP + 0x48f47)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48f47)" ( (binary_expression "unaff_EBP + 0x48f47" identifier + number_literal) ))) , (pointer_expression "*puVar13" * identifier) , (call_expression "SUB84(dVar3,0)" identifier (argument_list "(dVar3,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" ( (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (if_statement "if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" if (parenthesized_expression "(uVar23 != 0)" ( (binary_expression "uVar23 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" { (expression_statement "uVar24 = 0;" (assignment_expression "uVar24 = 0" identifier = number_literal) ;) (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" identifier = number_literal) ;) (do_statement "do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);" do (compound_statement "{\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          }" { (expression_statement "uVar22 = puVar13[uVar21];" (assignment_expression "uVar22 = puVar13[uVar21]" identifier = (subscript_expression "puVar13[uVar21]" identifier [ identifier ])) ;) (expression_statement "uVar24 = uVar24 + uVar22 * uVar21;" (assignment_expression "uVar24 = uVar24 + uVar22 * uVar21" identifier = (binary_expression "uVar24 + uVar22 * uVar21" identifier + (binary_expression "uVar22 * uVar21" identifier * identifier))) ;) (expression_statement "dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );" (assignment_expression "dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            )" identifier = (cast_expression "(double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            )" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            )" ( (binary_expression "((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12" (parenthesized_expression "((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar24" ( (type_descriptor "float" primitive_type) ) identifier) * (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) ))))) )) / (cast_expression "(float)uVar12" ( (type_descriptor "float" primitive_type) ) identifier)) )))) ;) (expression_statement "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));" (call_expression "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" identifier (argument_list "(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" ( (binary_expression "&UNK_00050f4a + unaff_EBP" (pointer_expression "&UNK_00050f4a" & identifier) + identifier) , identifier , identifier , (cast_expression "(double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c)" ( (binary_expression "((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c" (parenthesized_expression "((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar22" ( (type_descriptor "float" primitive_type) ) identifier) * (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) ))))) )) / (cast_expression "(float)(int)local_7c" ( (type_descriptor "float" primitive_type) ) (cast_expression "(int)local_7c" ( (type_descriptor "int" primitive_type) ) identifier))) ))) , (call_expression "SUB84(dVar3,0)" identifier (argument_list "(dVar3,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" ( (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (expression_statement "bVar25 = uVar23 != uVar21;" (assignment_expression "bVar25 = uVar23 != uVar21" identifier = (binary_expression "uVar23 != uVar21" identifier != identifier)) ;) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" identifier = (binary_expression "uVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) })) }))) (expression_statement "free(puVar13);" (call_expression "free(puVar13)" identifier (argument_list "(puVar13)" ( identifier ))) ;) (expression_statement "free(puVar18);" (call_expression "free(puVar18)" identifier (argument_list "(puVar18)" ( identifier ))) ;) (expression_statement "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" (assignment_expression "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" identifier = (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (goto_statement "goto LAB_000337ff;" goto statement_identifier ;) })) }) (else_clause "else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }" else (compound_statement "{\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }" { (expression_statement "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (pointer_expression "*(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" identifier = (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" * (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (pointer_expression "*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }" if (parenthesized_expression "(iVar10 != 0 || uVar21 != 0)" ( (binary_expression "iVar10 != 0 || uVar21 != 0" (binary_expression "iVar10 != 0" identifier != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) )) (compound_statement "{\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }" { (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }" { (labeled_statement "LAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);" statement_identifier : (expression_statement "sVar5 = *(short *)(iVar9 + 0x42);" (assignment_expression "sVar5 = *(short *)(iVar9 + 0x42)" identifier = (pointer_expression "*(short *)(iVar9 + 0x42)" * (cast_expression "(short *)(iVar9 + 0x42)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x42)" ( (binary_expression "iVar9 + 0x42" identifier + number_literal) ))))) ;)) (if_statement "if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }" if (parenthesized_expression "((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70))" ( (binary_expression "(sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)" (parenthesized_expression "(sVar5 == -0x6fda || sVar5 == 0x16)" ( (binary_expression "sVar5 == -0x6fda || sVar5 == 0x16" (binary_expression "sVar5 == -0x6fda" identifier == number_literal) || (binary_expression "sVar5 == 0x16" identifier == number_literal)) )) || (parenthesized_expression "(sVar11 = 4, sVar5 == -0x5c70)" ( (comma_expression "sVar11 = 4, sVar5 == -0x5c70" (assignment_expression "sVar11 = 4" identifier = number_literal) , (binary_expression "sVar5 == -0x5c70" identifier == number_literal)) ))) )) (compound_statement "{\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }" { (expression_statement "sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;" (assignment_expression "sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4" identifier = (binary_expression "(uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4" (binary_expression "(uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4" (call_expression "(uint)(*(char *)(iVar9 + 0x14) == '\x02')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(char *)(iVar9 + 0x14) == '\x02')" ( (binary_expression "*(char *)(iVar9 + 0x14) == '\x02'" (pointer_expression "*(char *)(iVar9 + 0x14)" * (cast_expression "(char *)(iVar9 + 0x14)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x14)" ( (binary_expression "iVar9 + 0x14" identifier + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) ))) * number_literal) + number_literal)) ;) })) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" identifier = (call_expression "FUN_00026dc0()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0)" identifier = (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0)" identifier (argument_list "(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0)" ( (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) , (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" identifier + (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" * (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" ( (binary_expression ""  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                        unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) , number_literal )))) ;) (if_statement "if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }" if (parenthesized_expression "(((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1))" ( (binary_expression "((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)" (parenthesized_expression "((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            )" ( (binary_expression "(iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) && (parenthesized_expression "(sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)" ( (comma_expression "sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1" (assignment_expression "sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4))" identifier = (call_expression "fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4))" identifier (argument_list "(local_34,sVar11,1,*(FILE **)(iVar9 + 4))" ( identifier , identifier , number_literal , (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) )))) , (binary_expression "sVar20 == 1" identifier == number_literal)) ))) )) && (parenthesized_expression "(sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)" ( (comma_expression "sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1" (assignment_expression "sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4))" identifier = (call_expression "fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4))" identifier (argument_list "(local_2c,sVar11,1,*(FILE **)(iVar9 + 4))" ( identifier , identifier , number_literal , (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) )))) , (binary_expression "sVar11 == 1" identifier == number_literal)) ))) )) (compound_statement "{\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }" { (expression_statement "lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();" (assignment_expression "lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))()" identifier = (call_expression "(**(code **)(&UNK_000870fe + unaff_EBP))()" (parenthesized_expression "(**(code **)(&UNK_000870fe + unaff_EBP))" ( (pointer_expression "**(code **)(&UNK_000870fe + unaff_EBP)" * (pointer_expression "*(code **)(&UNK_000870fe + unaff_EBP)" * (cast_expression "(code **)(&UNK_000870fe + unaff_EBP)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&UNK_000870fe + unaff_EBP)" ( (binary_expression "&UNK_000870fe + unaff_EBP" (pointer_expression "&UNK_000870fe" & identifier) + identifier) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();" (assignment_expression "lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))()" identifier = (call_expression "(**(code **)(&UNK_000870fe + unaff_EBP))()" (parenthesized_expression "(**(code **)(&UNK_000870fe + unaff_EBP))" ( (pointer_expression "**(code **)(&UNK_000870fe + unaff_EBP)" * (pointer_expression "*(code **)(&UNK_000870fe + unaff_EBP)" * (cast_expression "(code **)(&UNK_000870fe + unaff_EBP)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&UNK_000870fe + unaff_EBP)" ( (binary_expression "&UNK_000870fe + unaff_EBP" (pointer_expression "&UNK_000870fe" & identifier) + identifier) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "local_78 = (uint *)FUN_0001e0f0();" (assignment_expression "local_78 = (uint *)FUN_0001e0f0()" identifier = (cast_expression "(uint *)FUN_0001e0f0()" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001e0f0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_cc = (void *)FUN_0001e0f0();" (assignment_expression "local_cc = (void *)FUN_0001e0f0()" identifier = (cast_expression "(void *)FUN_0001e0f0()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001e0f0()" identifier (argument_list "()" ( ))))) ;) (if_statement "if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;" if (parenthesized_expression "((local_78 != (uint *)0x0) && (local_cc != (void *)0x0))" ( (binary_expression "(local_78 != (uint *)0x0) && (local_cc != (void *)0x0)" (parenthesized_expression "(local_78 != (uint *)0x0)" ( (binary_expression "local_78 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(local_cc != (void *)0x0)" ( (binary_expression "local_cc != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_0003325f;" goto statement_identifier ;)) }) (else_clause "else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }" else (compound_statement "{\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n          return 0;\n        }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "free(local_78);" (call_expression "free(local_78)" identifier (argument_list "(local_78)" ( identifier ))) ;) (expression_statement "free(local_cc);" (call_expression "free(local_cc)" identifier (argument_list "(local_cc)" ( identifier ))) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" identifier = number_literal) ;) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0003325f;" goto statement_identifier ;) })) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }" { (if_statement "if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;" if (parenthesized_expression "((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))" ( (binary_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0)" (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0)" ( (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 0xe" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) ))) )) (goto_statement "goto LAB_00033f90;" goto statement_identifier ;)) (expression_statement "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);" (assignment_expression "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" identifier = (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);" (assignment_expression "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" identifier = (pointer_expression "*(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (local_54 == 0 && local_50 == 0) goto LAB_00033382;" if (parenthesized_expression "(local_54 == 0 && local_50 == 0)" ( (binary_expression "local_54 == 0 && local_50 == 0" (binary_expression "local_54 == 0" identifier == number_literal) && (binary_expression "local_50 == 0" identifier == number_literal)) )) (goto_statement "goto LAB_00033382;" goto statement_identifier ;)) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" identifier = number_literal) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" identifier = number_literal) ;) (labeled_statement "LAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;" statement_identifier : (if_statement "if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;" if (parenthesized_expression "((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))" ( (binary_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0)" (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) || (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0)" ( (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 0xe" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) ))) )) (goto_statement "goto LAB_000332b0;" goto statement_identifier ;))) (goto_statement "goto LAB_00032d84;" goto statement_identifier ;) })) (expression_statement "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);" (assignment_expression "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" identifier = (pointer_expression "*(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);" (assignment_expression "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" identifier = (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }" if (parenthesized_expression "(local_54 != 0 || local_50 != 0)" ( (binary_expression "local_54 != 0 || local_50 != 0" (binary_expression "local_54 != 0" identifier != number_literal) || (binary_expression "local_50 != 0" identifier != number_literal)) )) (compound_statement "{\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }" { (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" identifier = number_literal) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_000332bc;" goto statement_identifier ;) })) (labeled_statement "LAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);" statement_identifier : (expression_statement "lVar27 = CONCAT44(local_50,local_54);" (assignment_expression "lVar27 = CONCAT44(local_50,local_54)" identifier = (call_expression "CONCAT44(local_50,local_54)" identifier (argument_list "(local_50,local_54)" ( identifier , identifier )))) ;)) (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar26 = lVar27;" (assignment_expression "lVar26 = lVar27" identifier = identifier) ;) (expression_statement "lVar29 = lVar27;" (assignment_expression "lVar29 = lVar27" identifier = identifier) ;) (expression_statement "lVar28 = lVar27;" (assignment_expression "lVar28 = lVar27" identifier = identifier) ;) (goto_statement "goto LAB_000333c0;" goto statement_identifier ;) })) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar29 = lVar28;" (assignment_expression "lVar29 = lVar28" identifier = identifier) ;) (labeled_statement "LAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;" statement_identifier : (if_statement "if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;" if (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)" ( (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) && (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal)) )) (goto_statement "goto LAB_00033740;" goto statement_identifier ;))) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }" { (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_00033293;" goto statement_identifier ;)) (labeled_statement "LAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" statement_identifier : (expression_statement "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (pointer_expression "*(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;)) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" identifier = (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" * (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (goto_statement "goto LAB_000332bc;" goto statement_identifier ;) })) (labeled_statement "LAB_00032d84:\n    iVar10 = FUN_00026dc0();" statement_identifier : (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" identifier = (call_expression "FUN_00026dc0()" identifier (argument_list "()" ( )))) ;)) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0)" identifier = (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0)" identifier (argument_list "(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0)" ( (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) , (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" identifier + (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" * (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" ( (binary_expression ""  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                    unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) , number_literal )))) ;) (if_statement "if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }" { (expression_statement "sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));" (assignment_expression "sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4))" identifier = (call_expression "fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4))" identifier (argument_list "(local_2c,0x10,1,*(FILE **)(iVar9 + 4))" ( identifier , number_literal , number_literal , (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) )))) ;) (if_statement "if (sVar11 != 1) goto LAB_00034303;" if (parenthesized_expression "(sVar11 != 1)" ( (binary_expression "sVar11 != 1" identifier != number_literal) )) (goto_statement "goto LAB_00034303;" goto statement_identifier ;)) (expression_statement "puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);" (assignment_expression "puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP)" identifier = (cast_expression "(undefined4 *)(&UNK_000870fe + unaff_EBP)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&UNK_000870fe + unaff_EBP)" ( (binary_expression "&UNK_000870fe + unaff_EBP" (pointer_expression "&UNK_000870fe" & identifier) + identifier) )))) ;) (expression_statement "lVar26 = (*(code *)*puVar1)();" (assignment_expression "lVar26 = (*(code *)*puVar1)()" identifier = (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" ( (pointer_expression "*(code *)*puVar1" * (cast_expression "(code *)*puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier))) )) (argument_list "()" ( )))) ;) (expression_statement "lVar27 = (*(code *)*puVar1)();" (assignment_expression "lVar27 = (*(code *)*puVar1)()" identifier = (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" ( (pointer_expression "*(code *)*puVar1" * (cast_expression "(code *)*puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier))) )) (argument_list "()" ( )))) ;) (expression_statement "uVar23 = (uint)((ulonglong)lVar27 >> 0x20);" (assignment_expression "uVar23 = (uint)((ulonglong)lVar27 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar27 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar27 >> 0x20)" ( (binary_expression "(ulonglong)lVar27 >> 0x20" (cast_expression "(ulonglong)lVar27" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "uVar21 = (uint)lVar27;" (assignment_expression "uVar21 = (uint)lVar27" identifier = (cast_expression "(uint)lVar27" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "(*(code *)*puVar1)();" (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" ( (pointer_expression "*(code *)*puVar1" * (cast_expression "(code *)*puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" identifier = (call_expression "FUN_00026dc0()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier = (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier (argument_list "(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" ( (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) , (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" identifier + (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" * (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) , number_literal )))) ;) (if_statement "if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00034347;" goto statement_identifier ;) })) (expression_statement "local_6c = (uint *)FUN_0001e0f0();" (assignment_expression "local_6c = (uint *)FUN_0001e0f0()" identifier = (cast_expression "(uint *)FUN_0001e0f0()" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001e0f0()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" if (parenthesized_expression "(local_6c == (uint *)0x0)" ( (binary_expression "local_6c == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" { (labeled_statement "LAB_000346fb:\n        lVar26 = 0;" statement_identifier : (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_00034347;" goto statement_identifier ;) })) (if_statement "if (lVar26 == 0) goto LAB_00034347;" if (parenthesized_expression "(lVar26 == 0)" ( (binary_expression "lVar26 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00034347;" goto statement_identifier ;)) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) (expression_statement "local_ec = 0xffffffff;" (assignment_expression "local_ec = 0xffffffff" identifier = number_literal) ;) (expression_statement "uStack_e8 = 0;" (assignment_expression "uStack_e8 = 0" identifier = number_literal) ;) (do_statement "do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));" do (compound_statement "{\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      }" { (expression_statement "uVar12 = local_6c[local_54 * 2];" (assignment_expression "uVar12 = local_6c[local_54 * 2]" identifier = (subscript_expression "local_6c[local_54 * 2]" identifier [ (binary_expression "local_54 * 2" identifier * number_literal) ])) ;) (expression_statement "uVar24 = (local_6c + local_54 * 2)[1];" (assignment_expression "uVar24 = (local_6c + local_54 * 2)[1]" identifier = (subscript_expression "(local_6c + local_54 * 2)[1]" (parenthesized_expression "(local_6c + local_54 * 2)" ( (binary_expression "local_6c + local_54 * 2" identifier + (binary_expression "local_54 * 2" identifier * number_literal)) )) [ number_literal ])) ;) (if_statement "if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }" if (parenthesized_expression "(uVar24 != 0 || uVar12 != 0)" ( (binary_expression "uVar24 != 0 || uVar12 != 0" (binary_expression "uVar24 != 0" identifier != number_literal) || (binary_expression "uVar12 != 0" identifier != number_literal)) )) (compound_statement "{\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }" { (if_statement "if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }" if (parenthesized_expression "(uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21))" ( (binary_expression "uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)" (binary_expression "uVar24 < uVar23" identifier < identifier) || (binary_expression "uVar24 - uVar23 < (uint)(uVar12 < uVar21)" (binary_expression "uVar24 - uVar23" identifier - identifier) < (call_expression "(uint)(uVar12 < uVar21)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar12 < uVar21)" ( (binary_expression "uVar12 < uVar21" identifier < identifier) ))))) )) (compound_statement "{\n            return 0;\n          }" { (return_statement "return 0;" return number_literal ;) })) (if_statement "if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }" if (parenthesized_expression "((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0))" ( (binary_expression "(uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)" (parenthesized_expression "(uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12))" ( (binary_expression "uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)" (binary_expression "uStack_e8 < uVar24" identifier < identifier) || (binary_expression "uStack_e8 - uVar24 < (uint)(local_ec < uVar12)" (binary_expression "uStack_e8 - uVar24" identifier - identifier) < (call_expression "(uint)(local_ec < uVar12)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_ec < uVar12)" ( (binary_expression "local_ec < uVar12" identifier < identifier) ))))) )) || (parenthesized_expression "(local_ec == 0xffffffff && uStack_e8 == 0)" ( (binary_expression "local_ec == 0xffffffff && uStack_e8 == 0" (binary_expression "local_ec == 0xffffffff" identifier == number_literal) && (binary_expression "uStack_e8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }" { (expression_statement "local_ec = uVar12;" (assignment_expression "local_ec = uVar12" identifier = identifier) ;) (expression_statement "uStack_e8 = uVar24;" (assignment_expression "uStack_e8 = uVar24" identifier = identifier) ;) })) })) (expression_statement "bVar25 = 0xfffffffe < local_54;" (assignment_expression "bVar25 = 0xfffffffe < local_54" identifier = (binary_expression "0xfffffffe < local_54" number_literal < identifier)) ;) (expression_statement "local_54 = local_54 + 1;" (assignment_expression "local_54 = local_54 + 1" identifier = (binary_expression "local_54 + 1" identifier + number_literal)) ;) (expression_statement "local_50 = local_50 + (uint)bVar25;" (assignment_expression "local_50 = local_50 + (uint)bVar25" identifier = (binary_expression "local_50 + (uint)bVar25" identifier + (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) while (parenthesized_expression "(lVar26 != CONCAT44(local_50,local_54))" ( (binary_expression "lVar26 != CONCAT44(local_50,local_54)" identifier != (call_expression "CONCAT44(local_50,local_54)" identifier (argument_list "(local_50,local_54)" ( identifier , identifier )))) )) ;) (if_statement "if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;" if (parenthesized_expression "(uStack_e8 == 0 && local_ec == 0xffffffff)" ( (binary_expression "uStack_e8 == 0 && local_ec == 0xffffffff" (binary_expression "uStack_e8 == 0" identifier == number_literal) && (binary_expression "local_ec == 0xffffffff" identifier == number_literal)) )) (goto_statement "goto LAB_000346fb;" goto statement_identifier ;)) (expression_statement "uVar12 = local_ec - uVar21;" (assignment_expression "uVar12 = local_ec - uVar21" identifier = (binary_expression "local_ec - uVar21" identifier - identifier)) ;) (expression_statement "uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);" (assignment_expression "uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21)" identifier = (binary_expression "(uStack_e8 - uVar23) - (uint)(local_ec < uVar21)" (parenthesized_expression "(uStack_e8 - uVar23)" ( (binary_expression "uStack_e8 - uVar23" identifier - identifier) )) - (call_expression "(uint)(local_ec < uVar21)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_ec < uVar21)" ( (binary_expression "local_ec < uVar21" identifier < identifier) ))))) ;) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" identifier = (call_expression "FUN_00026dc0()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier = (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier (argument_list "(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" ( (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) , (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" identifier + (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" * (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) , number_literal )))) ;) (if_statement "if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" { (labeled_statement "LAB_00033073:\n        dcgettext();" statement_identifier : (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;)) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00034347;" goto statement_identifier ;) })) (do_statement "do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);" do (compound_statement "{\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      }" { (expression_statement "sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));" (assignment_expression "sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4))" identifier = (call_expression "fread(local_2c,4,1,*(FILE **)(iVar9 + 4))" identifier (argument_list "(local_2c,4,1,*(FILE **)(iVar9 + 4))" ( identifier , number_literal , number_literal , (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) )))) ;) (if_statement "if (sVar11 != 1) goto LAB_00033073;" if (parenthesized_expression "(sVar11 != 1)" ( (binary_expression "sVar11 != 1" identifier != number_literal) )) (goto_statement "goto LAB_00033073;" goto statement_identifier ;)) (if_statement "if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;" if (parenthesized_expression "((uVar21 & uVar12) == 0xffffffff)" ( (binary_expression "(uVar21 & uVar12) == 0xffffffff" (parenthesized_expression "(uVar21 & uVar12)" ( (binary_expression "uVar21 & uVar12" identifier & identifier) )) == number_literal) )) (goto_statement "goto LAB_000346fb;" goto statement_identifier ;)) (expression_statement "bVar25 = 0xfffffffe < uVar12;" (assignment_expression "bVar25 = 0xfffffffe < uVar12" identifier = (binary_expression "0xfffffffe < uVar12" number_literal < identifier)) ;) (expression_statement "uVar12 = uVar12 + 1;" (assignment_expression "uVar12 = uVar12 + 1" identifier = (binary_expression "uVar12 + 1" identifier + number_literal)) ;) (expression_statement "uVar21 = uVar21 + bVar25;" (assignment_expression "uVar21 = uVar21 + bVar25" identifier = (binary_expression "uVar21 + bVar25" identifier + identifier)) ;) (expression_statement "lVar26 = CONCAT44(uVar21,uVar12);" (assignment_expression "lVar26 = CONCAT44(uVar21,uVar12)" identifier = (call_expression "CONCAT44(uVar21,uVar12)" identifier (argument_list "(uVar21,uVar12)" ( identifier , identifier )))) ;) (expression_statement "uVar23 = (*(code *)*puVar1)();" (assignment_expression "uVar23 = (*(code *)*puVar1)()" identifier = (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" ( (pointer_expression "*(code *)*puVar1" * (cast_expression "(code *)*puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier))) )) (argument_list "()" ( )))) ;) }) while (parenthesized_expression "((uVar23 & 1) == 0)" ( (binary_expression "(uVar23 & 1) == 0" (parenthesized_expression "(uVar23 & 1)" ( (binary_expression "uVar23 & 1" identifier & number_literal) )) == number_literal) )) ;) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" identifier = (call_expression "FUN_00026dc0()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier = (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier (argument_list "(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" ( (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) , (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" identifier + (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" * (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) , number_literal )))) ;) (if_statement "if (iVar10 != 0) goto LAB_00033073;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00033073;" goto statement_identifier ;)) (expression_statement "local_90 = (void *)FUN_0001e0f0();" (assignment_expression "local_90 = (void *)FUN_0001e0f0()" identifier = (cast_expression "(void *)FUN_0001e0f0()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001e0f0()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (local_90 == (void *)0x0) goto LAB_00034347;" if (parenthesized_expression "(local_90 == (void *)0x0)" ( (binary_expression "local_90 == (void *)0x0" identifier == (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00034347;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" else (compound_statement "{\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" { (labeled_statement "LAB_00034303:\n      dcgettext();" statement_identifier : (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;)) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (expression_statement "lVar27 = 0;" (assignment_expression "lVar27 = 0" identifier = number_literal) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00034347:\n      free(local_6c);" statement_identifier : (expression_statement "free(local_6c);" (call_expression "free(local_6c)" identifier (argument_list "(local_6c)" ( identifier ))) ;)) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n        return 0;\n      }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) }))) (expression_statement "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (pointer_expression "*(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" identifier = (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" * (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;" if (parenthesized_expression "((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0))" ( (binary_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)" (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0)" ( (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (binary_expression "iVar10 != 0" identifier != number_literal)) )) || (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)" ( (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000333c0;" goto statement_identifier ;)) (labeled_statement "LAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;" statement_identifier : (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_00033a30;" goto statement_identifier ;))) (if_statement "if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }" if (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0)" ( (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }" { (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_000337b9;" goto statement_identifier ;)) (labeled_statement "LAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);" statement_identifier : (expression_statement "local_ec = *(int *)(iVar9 + 0x5c);" (assignment_expression "local_ec = *(int *)(iVar9 + 0x5c)" identifier = (pointer_expression "*(int *)(iVar9 + 0x5c)" * (cast_expression "(int *)(iVar9 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x5c)" ( (binary_expression "iVar9 + 0x5c" identifier + number_literal) ))))) ;)) (if_statement "if (local_ec == 0) goto LAB_000337b9;" if (parenthesized_expression "(local_ec == 0)" ( (binary_expression "local_ec == 0" identifier == number_literal) )) (goto_statement "goto LAB_000337b9;" goto statement_identifier ;)) (goto_statement "goto LAB_00033a43;" goto statement_identifier ;) })) (labeled_statement "LAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" statement_identifier : (expression_statement "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" (assignment_expression "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" identifier = (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;)) (if_statement "if (iVar9 != 0) goto LAB_00033426;" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00033426;" goto statement_identifier ;)) (labeled_statement "LAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }" statement_identifier : (if_statement "if (local_78 == (uint *)0x0) {\n      return 1;\n    }" if (parenthesized_expression "(local_78 == (uint *)0x0)" ( (binary_expression "local_78 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) }))) (labeled_statement "LAB_000337ff:\n    free(local_78);" statement_identifier : (expression_statement "free(local_78);" (call_expression "free(local_78)" identifier (argument_list "(local_78)" ( identifier ))) ;)) (expression_statement "free(local_cc);" (call_expression "free(local_cc)" identifier (argument_list "(local_cc)" ( identifier ))) ;) }))) (expression_statement "local_70 = (uint)((ulonglong)lVar26 >> 0x20);" (assignment_expression "local_70 = (uint)((ulonglong)lVar26 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar26 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar26 >> 0x20)" ( (binary_expression "(ulonglong)lVar26 >> 0x20" (cast_expression "(ulonglong)lVar26" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_74 = (uint)lVar26;" (assignment_expression "local_74 = (uint)lVar26" identifier = (cast_expression "(uint)lVar26" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_88 = (int)((ulonglong)lVar27 >> 0x20);" (assignment_expression "local_88 = (int)((ulonglong)lVar27 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar27 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar27 >> 0x20)" ( (binary_expression "(ulonglong)lVar27 >> 0x20" (cast_expression "(ulonglong)lVar27" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_8c = (uint)lVar27;" (assignment_expression "local_8c = (uint)lVar27" identifier = (cast_expression "(uint)lVar27" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (local_6c == (uint *)0x0) {\n    return 1;\n  }" if (parenthesized_expression "(local_6c == (uint *)0x0)" ( (binary_expression "local_6c == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return 1;\n  }" { (return_statement "return 1;" return number_literal ;) })) (if_statement "if (iVar9 == 0) {\n    return 1;\n  }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n    return 1;\n  }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);" (assignment_expression "pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" identifier = (cast_expression "(char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" identifier (argument_list "(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" ( number_literal , (binary_expression "&UNK_00050fb6 + unaff_EBP" (pointer_expression "&UNK_00050fb6" & identifier) + identifier) , (binary_expression "&UNK_00050f6e + unaff_EBP" (pointer_expression "&UNK_00050f6e" & identifier) + identifier) , identifier ))))) ;) (expression_statement "printf(pcVar17,local_54);" (call_expression "printf(pcVar17,local_54)" identifier (argument_list "(pcVar17,local_54)" ( identifier , identifier ))) ;) (expression_statement "puVar18 = (uint *)calloc(local_54,4);" (assignment_expression "puVar18 = (uint *)calloc(local_54,4)" identifier = (cast_expression "(uint *)calloc(local_54,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(local_54,4)" identifier (argument_list "(local_54,4)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar18 != (uint *)0x0) {\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }" if (parenthesized_expression "(puVar18 != (uint *)0x0)" ( (binary_expression "puVar18 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }" { (expression_statement "puVar31 = &UNK_00050ee6 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050ee6 + unaff_EBP" identifier = (binary_expression "&UNK_00050ee6 + unaff_EBP" (pointer_expression "&UNK_00050ee6" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" if (parenthesized_expression "(local_50 == 0 && local_54 == 0)" ( (binary_expression "local_50 == 0 && local_54 == 0" (binary_expression "local_50 == 0" identifier == number_literal) && (binary_expression "local_54 == 0" identifier == number_literal)) )) (compound_statement "{\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }" { (expression_statement "puVar13 = (uint *)calloc(1,4);" (assignment_expression "puVar13 = (uint *)calloc(1,4)" identifier = (cast_expression "(uint *)calloc(1,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(1,4)" identifier (argument_list "(1,4)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar13 != (uint *)0x0) goto LAB_000331cb;" if (parenthesized_expression "(puVar13 != (uint *)0x0)" ( (binary_expression "puVar13 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000331cb;" goto statement_identifier ;)) }) (else_clause "else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" else (compound_statement "{\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" { (expression_statement "local_c4 = (uint *)0x0;" (assignment_expression "local_c4 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_f4 = local_6c;" (assignment_expression "local_f4 = local_6c" identifier = identifier) ;) (expression_statement "local_dc = puVar18;" (assignment_expression "local_dc = puVar18" identifier = identifier) ;) (do_statement "do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);" do (compound_statement "{\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      }" { (expression_statement "uVar21 = *local_f4;" (assignment_expression "uVar21 = *local_f4" identifier = (pointer_expression "*local_f4" * identifier)) ;) (if_statement "if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }" if (parenthesized_expression "(local_f4[1] != 0 || uVar21 != 0)" ( (binary_expression "local_f4[1] != 0 || uVar21 != 0" (binary_expression "local_f4[1] != 0" (subscript_expression "local_f4[1]" identifier [ number_literal ]) != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) )) (compound_statement "{\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }" { (expression_statement "uVar23 = uVar21 - local_8c;" (assignment_expression "uVar23 = uVar21 - local_8c" identifier = (binary_expression "uVar21 - local_8c" identifier - identifier)) ;) (expression_statement "uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);" (assignment_expression "uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c)" identifier = (binary_expression "(local_f4[1] - local_88) - (uint)(uVar21 < local_8c)" (parenthesized_expression "(local_f4[1] - local_88)" ( (binary_expression "local_f4[1] - local_88" (subscript_expression "local_f4[1]" identifier [ number_literal ]) - identifier) )) - (call_expression "(uint)(uVar21 < local_8c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar21 < local_8c)" ( (binary_expression "uVar21 < local_8c" identifier < identifier) ))))) ;) (if_statement "if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }" if (parenthesized_expression "(uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74))" ( (binary_expression "uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)" (binary_expression "uVar21 < local_70" identifier < identifier) || (binary_expression "uVar21 - local_70 < (uint)(uVar23 < local_74)" (binary_expression "uVar21 - local_70" identifier - identifier) < (call_expression "(uint)(uVar23 < local_74)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 < local_74)" ( (binary_expression "uVar23 < local_74" identifier < identifier) ))))) )) (compound_statement "{\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }" { (expression_statement "uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;" (assignment_expression "uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1" identifier = (binary_expression "*(uint *)((int)local_90 + uVar23 * 8) & 1" (pointer_expression "*(uint *)((int)local_90 + uVar23 * 8)" * (cast_expression "(uint *)((int)local_90 + uVar23 * 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_90 + uVar23 * 8)" ( (binary_expression "(int)local_90 + uVar23 * 8" (cast_expression "(int)local_90" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar23 * 8" identifier * number_literal)) )))) & number_literal)) ;) (if_statement "if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }" if (parenthesized_expression "(uVar12 == 0)" ( (binary_expression "uVar12 == 0" identifier == number_literal) )) (compound_statement "{\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }" { (expression_statement "uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;" (assignment_expression "uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1" identifier = (binary_expression "(lVar27 - *(longlong *)local_f4) + lVar26 + 1" (binary_expression "(lVar27 - *(longlong *)local_f4) + lVar26" (parenthesized_expression "(lVar27 - *(longlong *)local_f4)" ( (binary_expression "lVar27 - *(longlong *)local_f4" identifier - (pointer_expression "*(longlong *)local_f4" * (cast_expression "(longlong *)local_f4" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) + identifier) + number_literal)) ;) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" identifier = number_literal) ;) (expression_statement "uVar12 = 1;" (assignment_expression "uVar12 = 1" identifier = number_literal) ;) (do_statement "do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);" do (compound_statement "{\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              }" { (expression_statement "bVar25 = 0xfffffffe < uVar12;" (assignment_expression "bVar25 = 0xfffffffe < uVar12" identifier = (binary_expression "0xfffffffe < uVar12" number_literal < identifier)) ;) (expression_statement "uVar12 = uVar12 + 1;" (assignment_expression "uVar12 = uVar12 + 1" identifier = (binary_expression "uVar12 + 1" identifier + number_literal)) ;) (expression_statement "iVar9 = iVar9 + (uint)bVar25;" (assignment_expression "iVar9 = iVar9 + (uint)bVar25" identifier = (binary_expression "iVar9 + (uint)bVar25" identifier + (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "uVar21 = (uint)uVar7;" (assignment_expression "uVar21 = (uint)uVar7" identifier = (cast_expression "(uint)uVar7" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar8 = uVar7;" (assignment_expression "uVar8 = uVar7" identifier = identifier) ;) (if_statement "if (uVar7 == CONCAT44(iVar9,uVar12)) break;" if (parenthesized_expression "(uVar7 == CONCAT44(iVar9,uVar12))" ( (binary_expression "uVar7 == CONCAT44(iVar9,uVar12)" identifier == (call_expression "CONCAT44(iVar9,uVar12)" identifier (argument_list "(iVar9,uVar12)" ( identifier , identifier )))) )) (break_statement "break;" break ;)) (expression_statement "uVar21 = uVar12;" (assignment_expression "uVar21 = uVar12" identifier = identifier) ;) (expression_statement "uVar8 = CONCAT44(iVar9,uVar12);" (assignment_expression "uVar8 = CONCAT44(iVar9,uVar12)" identifier = (call_expression "CONCAT44(iVar9,uVar12)" identifier (argument_list "(iVar9,uVar12)" ( identifier , identifier )))) ;) }) while (parenthesized_expression "((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0)" ( (binary_expression "(*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0" (parenthesized_expression "(*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1)" ( (binary_expression "*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1" (pointer_expression "*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10)" * (cast_expression "(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10)" ( (binary_expression "(int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10" (binary_expression "(int)local_90 + (uVar23 + 1 + uVar12) * 8" (cast_expression "(int)local_90" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uVar23 + 1 + uVar12) * 8" (parenthesized_expression "(uVar23 + 1 + uVar12)" ( (binary_expression "uVar23 + 1 + uVar12" (binary_expression "uVar23 + 1" identifier + number_literal) + identifier) )) * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) ;) }) (else_clause "else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }" else (compound_statement "{\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }" { (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" identifier = number_literal) ;) (expression_statement "uVar8 = (ulonglong)uVar12;" (assignment_expression "uVar8 = (ulonglong)uVar12" identifier = (cast_expression "(ulonglong)uVar12" ( (type_descriptor "ulonglong" type_identifier) ) identifier)) ;) }))) }) (else_clause "else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }" else (compound_statement "{\n            uVar21 = 1;\n            uVar8 = 1;\n          }" { (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" identifier = number_literal) ;) (expression_statement "uVar8 = 1;" (assignment_expression "uVar8 = 1" identifier = number_literal) ;) }))) (expression_statement "local_58 = (int)(uVar8 >> 0x20);" (assignment_expression "local_58 = (int)(uVar8 >> 0x20)" identifier = (cast_expression "(int)(uVar8 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uVar8 >> 0x20)" ( (binary_expression "uVar8 >> 0x20" identifier >> number_literal) )))) ;) (expression_statement "local_5c = (uint)uVar8;" (assignment_expression "local_5c = (uint)uVar8" identifier = (cast_expression "(uint)uVar8" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "*local_dc = uVar21;" (assignment_expression "*local_dc = uVar21" (pointer_expression "*local_dc" * identifier) = identifier) ;) (if_statement "if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }" if (parenthesized_expression "(local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c))" ( (binary_expression "local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)" (binary_expression "local_58 != 0" identifier != number_literal) || (binary_expression "(uint)-local_58 < (uint)(local_cc < local_5c)" (binary_expression "(uint)-local_58" (parenthesized_expression "(uint)" ( identifier )) - identifier) < (call_expression "(uint)(local_cc < local_5c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_cc < local_5c)" ( (binary_expression "local_cc < local_5c" identifier < identifier) ))))) )) (compound_statement "{\n            local_cc = (void *)uVar21;\n          }" { (expression_statement "local_cc = (void *)uVar21;" (assignment_expression "local_cc = (void *)uVar21" identifier = (cast_expression "(void *)uVar21" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) })) (expression_statement "local_c4 = (uint *)((int)local_c4 + uVar21);" (assignment_expression "local_c4 = (uint *)((int)local_c4 + uVar21)" identifier = (cast_expression "(uint *)((int)local_c4 + uVar21)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_c4 + uVar21)" ( (binary_expression "(int)local_c4 + uVar21" (cast_expression "(int)local_c4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) })) (expression_statement "local_f4 = local_f4 + 2;" (assignment_expression "local_f4 = local_f4 + 2" identifier = (binary_expression "local_f4 + 2" identifier + number_literal)) ;) (expression_statement "local_dc = local_dc + 1;" (assignment_expression "local_dc = local_dc + 1" identifier = (binary_expression "local_dc + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_6c + local_54 * 2 != local_f4)" ( (binary_expression "local_6c + local_54 * 2 != local_f4" (binary_expression "local_6c + local_54 * 2" identifier + (binary_expression "local_54 * 2" identifier * number_literal)) != identifier) )) ;) (expression_statement "puVar13 = (uint *)calloc((int)local_cc + 1,4);" (assignment_expression "puVar13 = (uint *)calloc((int)local_cc + 1,4)" identifier = (cast_expression "(uint *)calloc((int)local_cc + 1,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc((int)local_cc + 1,4)" identifier (argument_list "((int)local_cc + 1,4)" ( (binary_expression "(int)local_cc + 1" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))))) ;) (if_statement "if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }" if (parenthesized_expression "(puVar13 != (uint *)0x0)" ( (binary_expression "puVar13 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }" { (expression_statement "puVar14 = puVar18;" (assignment_expression "puVar14 = puVar18" identifier = identifier) ;) (do_statement "do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);" do (compound_statement "{\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        }" { (expression_statement "uVar21 = *puVar14;" (assignment_expression "uVar21 = *puVar14" identifier = (pointer_expression "*puVar14" * identifier)) ;) (expression_statement "puVar14 = puVar14 + 1;" (assignment_expression "puVar14 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) (expression_statement "puVar13[uVar21] = puVar13[uVar21] + 1;" (assignment_expression "puVar13[uVar21] = puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" identifier [ identifier ]) = (binary_expression "puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" identifier [ identifier ]) + number_literal)) ;) }) while (parenthesized_expression "(puVar18 + local_54 != puVar14)" ( (binary_expression "puVar18 + local_54 != puVar14" (binary_expression "puVar18 + local_54" identifier + identifier) != identifier) )) ;) (expression_statement "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;" (assignment_expression "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54" identifier = (binary_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54" (parenthesized_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(double)*puVar13" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*puVar13" * identifier)) * (cast_expression "(double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) )))))) )) / (cast_expression "(double)(int)local_54" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_54" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) (expression_statement "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );" (call_expression "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" identifier (argument_list "((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" ( (cast_expression "(char *)(unaff_EBP + 0x48f47)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48f47)" ( (binary_expression "unaff_EBP + 0x48f47" identifier + number_literal) ))) , (pointer_expression "*puVar13" * identifier) , (call_expression "SUB84(dVar3,0)" identifier (argument_list "(dVar3,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" ( (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (if_statement "if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" if (parenthesized_expression "(local_cc != (void *)0x0)" ( (binary_expression "local_cc != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" { (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;) (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" identifier = number_literal) ;) (do_statement "do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);" do (compound_statement "{\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          }" { (expression_statement "uVar12 = puVar13[uVar21];" (assignment_expression "uVar12 = puVar13[uVar21]" identifier = (subscript_expression "puVar13[uVar21]" identifier [ identifier ])) ;) (expression_statement "uVar23 = uVar23 + uVar12 * uVar21;" (assignment_expression "uVar23 = uVar23 + uVar12 * uVar21" identifier = (binary_expression "uVar23 + uVar12 * uVar21" identifier + (binary_expression "uVar12 * uVar21" identifier * identifier))) ;) (expression_statement "dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);" (assignment_expression "dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4)" identifier = (cast_expression "(double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4)" ( (binary_expression "((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4" (parenthesized_expression "((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar23" ( (type_descriptor "float" primitive_type) ) identifier) * (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) ))))) )) / (cast_expression "(float)local_c4" ( (type_descriptor "float" primitive_type) ) identifier)) )))) ;) (expression_statement "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));" (call_expression "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" identifier (argument_list "(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" ( (binary_expression "&UNK_00050f4a + unaff_EBP" (pointer_expression "&UNK_00050f4a" & identifier) + identifier) , identifier , identifier , (cast_expression "(double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54)" ( (binary_expression "((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54" (parenthesized_expression "((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar12" ( (type_descriptor "float" primitive_type) ) identifier) * (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) ))))) )) / (cast_expression "(float)(int)local_54" ( (type_descriptor "float" primitive_type) ) (cast_expression "(int)local_54" ( (type_descriptor "int" primitive_type) ) identifier))) ))) , (call_expression "SUB84(dVar3,0)" identifier (argument_list "(dVar3,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" ( (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (expression_statement "bVar25 = local_cc != (void *)uVar21;" (assignment_expression "bVar25 = local_cc != (void *)uVar21" identifier = (binary_expression "local_cc != (void *)uVar21" identifier != (cast_expression "(void *)uVar21" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" identifier = (binary_expression "uVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) })) (labeled_statement "LAB_000331cb:\n        free(puVar13);" statement_identifier : (expression_statement "free(puVar13);" (call_expression "free(puVar13)" identifier (argument_list "(puVar13)" ( identifier ))) ;)) (expression_statement "free(puVar18);" (call_expression "free(puVar18)" identifier (argument_list "(puVar18)" ( identifier ))) ;) (expression_statement "free(local_6c);" (call_expression "free(local_6c)" identifier (argument_list "(local_6c)" ( identifier ))) ;) (expression_statement "free(local_90);" (call_expression "free(local_90)" identifier (argument_list "(local_90)" ( identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) }))) (expression_statement "free(puVar18);" (call_expression "free(puVar18)" identifier (argument_list "(puVar18)" ( identifier ))) ;) })) (labeled_statement "LAB_00034166:\n  dcgettext();" statement_identifier : (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;)) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (return_statement "return 0;" return number_literal ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bp replaced with injection: get_pc_thunk.bp */\n/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */\n\nbfd_boolean __regparm3 process_symbol_table(Filedata *filedata)\n\n{\n  Filedata *filedata_00;\n  bfd_vma *pbVar1;\n  double dVar2;\n  double dVar3;\n  ushort uVar4;\n  FILE *pFVar5;\n  ulong uVar6;\n  ulong uVar7;\n  Elf_Internal_Shdr *pEVar8;\n  byte bVar9;\n  undefined *puVar10;\n  wchar_t wVar11;\n  int iVar12;\n  size_t sVar13;\n  int iVar14;\n  uint uVar15;\n  char *pcVar16;\n  uint *puVar17;\n  uint *puVar18;\n  void *pvVar19;\n  uint uVar20;\n  uint *puVar21;\n  char **filedata_01;\n  char *pcVar22;\n  size_t sVar23;\n  uint uVar24;\n  bfd_boolean bVar25;\n  uint uVar26;\n  ulong *strtab;\n  uint uVar27;\n  ulong *sec;\n  bool bVar28;\n  elf_vma eVar29;\n  elf_vma eVar30;\n  elf_vma eVar31;\n  FILE *pFVar32;\n  undefined4 in_stack_fffffefc;\n  undefined4 uVar33;\n  versioned_symbol_info *sym_info;\n  FILE *in_stack_ffffff00;\n  ushort *vna_other_00;\n  Elf_Internal_Sym *in_stack_ffffff04;\n  bfd_vma *local_f4;\n  Filedata *local_ec;\n  uint uStack_e8;\n  uint local_e0;\n  uint *local_dc;\n  Filedata *local_d4;\n  bfd_vma *local_cc;\n  bfd_vma *local_c4;\n  char *local_bc;\n  uint *local_b4;\n  uint local_b0;\n  bfd_vma *local_90;\n  undefined8 local_8c;\n  Elf_Internal_Sym *local_80;\n  size_t local_7c;\n  bfd_vma *local_78;\n  undefined8 local_74;\n  bfd_vma *local_6c;\n  uint local_5c;\n  int local_58;\n  uint local_54;\n  uint local_50;\n  ushort vna_other;\n  uchar nb [8];\n  uchar nc [8];\n  uchar local_24 [20];\n  \n  local_dc = (uint *)dynamic_info[4]._4_4_;\n  if (do_dyn_syms == 0 && do_syms == 0) {\n    if (do_histogram == 0) {\n      return 1;\n    }\n    local_e0 = (uint)dynamic_info[4];\n    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) goto LAB_00033f90;\n    eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n    if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      goto LAB_00032d84;\n    }\n    local_cc = (bfd_vma *)0x0;\n    local_78 = (bfd_vma *)0x0;\n    local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n    local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\nLAB_00033740:\n    local_54 = (uint)dynamic_info[4];\n    local_50 = dynamic_info[4]._4_4_;\n    if ((uint)dynamic_info[4] == 0 && dynamic_info[4]._4_4_ == 0) {\n      local_74 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_8c = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    local_74 = 0;\n    local_8c = 0;\n    local_90 = (bfd_vma *)0x0;\n    local_6c = (bfd_vma *)0x0;\n    local_54 = 0;\n    local_50 = 0;\nLAB_000333c0:\n    local_7c = (size_t)eVar31;\n    if (do_syms == 0) goto LAB_0003378f;\n    if (do_using_dynamic != 0) {\n      if ((dynamic_strings == (char *)0x0) || (dynamic_symbols == (Elf_Internal_Sym *)0x0)) {\n        if (do_dyn_syms != 0) goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar16);\n        }\n        else {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }\n        pvVar19 = xcmalloc(local_e0,1);\n        pcVar16 = (char *)0x0;\n        memset(pvVar19,0,local_e0);\n        if (eVar31 != 0) {\n          local_ec = (Filedata *)0x0;\n          do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);\n        }\n        free(pvVar19);\n      }\n      if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar22);\n        }\n        else {\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar15 = 0;\n          do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (do_dyn_syms == 0) goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = (Filedata *)filedata->section_headers;\n    if (local_ec != (Filedata *)0x0) {\nLAB_00033a43:\n      puVar10 = PTR_stdout_000b3fd8;\n      if ((filedata->file_header).e_shnum != 0) {\n        filedata_01 = &filedata->string_table;\n        local_b0 = 0;\n        do {\n          pFVar5 = local_ec->handle;\n          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;\n        } while (local_b0 < (filedata->file_header).e_shnum);\n      }\n      goto LAB_00033418;\n    }\n    if (do_syms == 0) goto LAB_00033418;\nLAB_000337b9:\n    pcVar16 = (char *)dcgettext(0,\n                                "\nDynamic symbol information is not available for displaying symbols.\n"\n                                ,5);\n    printf(pcVar16);\n    if (do_histogram == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)eVar31;\n    bVar25 = do_histogram;\n    if (local_78 != (bfd_vma *)0x0) {\n      pcVar16 = (char *)dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5);\n      printf(pcVar16,local_7c);\n      puVar21 = (uint *)calloc(local_7c,4);\n      if (puVar21 == (uint *)0x0) {\n        pcVar16 = "Out of memory allocating space for histogram buckets\n";\n        goto LAB_00034166;\n      }\n      pvVar19 = xcmalloc(local_e0,1);\n      memset(pvVar19,0,local_e0);\n      pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n      printf(pcVar16);\n      if (eVar31 == 0) {\n        free(pvVar19);\n        puVar17 = (uint *)calloc(1,4);\n        if (puVar17 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar15 = 0;\n        uVar24 = 0;\n        local_b4 = puVar21;\n        do {\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c != local_c4);\n        free(pvVar19);\n        puVar17 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar17 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }\n        puVar18 = puVar21;\n        do {\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        } while (puVar21 + local_7c != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (uVar15 != 0) {\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }\n      }\n      free(puVar17);\n      free(puVar21);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    local_e0 = (uint)dynamic_info[4];\n    eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n      if (do_histogram != 0) {\nLAB_00033f90:\n        uVar4 = (filedata->file_header).e_machine;\n        if ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }\n        wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n        iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n        if (iVar12 == 0) {\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }\n        if (do_using_dynamic != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (bfd_vma *)0x0;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        eVar31 = 0;\n        goto LAB_0003325f;\n      }\n      if (do_using_dynamic != 0) {\n        if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;\n        if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)\n        goto LAB_00033382;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\nLAB_00033293:\n        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;\n        goto LAB_00032d84;\n      }\n      if ((uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0) {\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_8c = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n      local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\n      eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      local_54 = local_e0;\n      local_50 = (uint)local_dc;\n      goto LAB_000333c0;\n    }\n    local_cc = (bfd_vma *)0x0;\n    local_78 = (bfd_vma *)0x0;\nLAB_0003325f:\n    if (dynamic_info_DT_GNU_HASH._4_4_ == 0 && (uint)dynamic_info_DT_GNU_HASH == 0)\n    goto LAB_00033740;\n    if (do_histogram == 0) {\n      if (do_using_dynamic != 0) goto LAB_00033293;\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n    iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n    if (iVar12 == 0) {\n      pFVar32 = (FILE *)filedata->handle;\n      uVar33 = 1;\n      sVar13 = fread(nc,0x10,1,pFVar32);\n      if (sVar13 != 1) {\n        pcVar16 = "Failed to read in number of buckets\n";\n        goto LAB_00034303;\n      }\n      eVar29 = (*byte_get)(nc,4);\n      eVar30 = (*byte_get)(nc + 4,4);\n      (*byte_get)(local_24,4);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      uVar33 = 0;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      local_8c = eVar30;\n      if (iVar14 != 0) {\n        pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);\n        error(pcVar16);\n        local_74 = 0;\n        local_6c = (bfd_vma *)0x0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      local_74._0_4_ = (uint)eVar29;\n      local_74._4_4_ = (uint)(eVar29 >> 0x20);\n      local_6c = get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74);\n      if (local_6c == (bfd_vma *)0x0) {\nLAB_000346fb:\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      if (local_74._4_4_ == 0 && (uint)local_74 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = (Filedata *)0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar15 = (uint)local_6c[local_54];\n        uVar24 = *(uint *)((int)(local_6c + local_54) + 4);\n        local_8c._0_4_ = (uint)eVar30;\n        local_8c._4_4_ = (uint)(eVar30 >> 0x20);\n        if (uVar24 != 0 || uVar15 != 0) {\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar28 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + bVar28;\n      } while (local_74._4_4_ != local_50 || (uint)local_74 != local_54);\n      if (uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff) goto LAB_000346fb;\n      uVar15 = (int)local_ec - (uint)local_8c;\n      uVar24 = (uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n      if (iVar12 != 0) {\nLAB_000347ff:\n        pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00033073:\n        pcVar16 = (char *)dcgettext(0,pcVar16,5);\n        error(pcVar16);\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      do {\n        pFVar32 = (FILE *)filedata->handle;\n        uVar33 = 1;\n        sVar13 = fread(nc,4,1,pFVar32);\n        if (sVar13 != 1) {\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }\n        if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;\n        bVar28 = 0xfffffffe < uVar15;\n        uVar15 = uVar15 + 1;\n        uVar24 = uVar24 + bVar28;\n        eVar29 = (*byte_get)(nc,4);\n      } while ((eVar29 & 1) == 0);\n      local_74 = CONCAT44(uVar24,uVar15);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      if (iVar14 != 0) goto LAB_000347ff;\n      local_90 = get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15);\n      eVar29 = local_74;\n      if (local_90 == (bfd_vma *)0x0) goto LAB_00034347;\n    }\n    else {\n      pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034303:\n      pcVar16 = (char *)dcgettext(0,pcVar16,5);\n      error(pcVar16);\n      local_74 = 0;\n      local_8c = 0;\n      local_6c = (bfd_vma *)0x0;\n      eVar29 = local_74;\nLAB_00034347:\n      local_74 = eVar29;\n      free(local_6c);\n      if (do_using_dynamic != 0) {\n        return 0;\n      }\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    if ((dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0) ||\n        ((uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (do_dyn_syms != 0) goto LAB_00033a30;\n    if (do_syms != 0) {\n      if (do_using_dynamic != 0) goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = (Filedata *)filedata->section_headers;\n      if (local_ec == (Filedata *)0x0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    if (do_histogram != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (bfd_vma *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    bVar25 = do_histogram;\n    free(local_78);\n    free(local_cc);\n  }\n  if (local_6c == (bfd_vma *)0x0) {\n    return 1;\n  }\n  if (bVar25 == 0) {\n    return 1;\n  }\n  pcVar16 = (char *)dcngettext(0,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu bucket):\n"\n                               ,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu buckets):\n"\n                               ,local_54,5);\n  printf(pcVar16,local_54);\n  puVar21 = (uint *)calloc(local_54,4);\n  if (puVar21 == (uint *)0x0) {\n    pcVar16 = "Out of memory allocating space for gnu histogram buckets\n";\n  }\n  else {\n    pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n    printf(pcVar16);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar17 = (uint *)calloc(1,4);\n      if (puVar17 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar21;\n      do {\n        uVar15 = *(uint *)((int)local_f4 + 4);\n        uVar24 = (uint)*local_f4;\n        if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }\n        local_f4 = local_f4 + 1;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 != local_f4);\n      puVar17 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar17 != (uint *)0x0) {\n        puVar18 = puVar21;\n        do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }\nLAB_000331cb:\n        free(puVar17);\n        free(puVar21);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar21);\n    pcVar16 = "Out of memory allocating space for gnu histogram counts\n";\n  }\nLAB_00034166:\n  pcVar16 = (char *)dcgettext(0,pcVar16,5);\n  error(pcVar16);\n  return 0;\n}\n\n" comment comment (function_definition "bfd_boolean __regparm3 process_symbol_table(Filedata *filedata)\n\n{\n  Filedata *filedata_00;\n  bfd_vma *pbVar1;\n  double dVar2;\n  double dVar3;\n  ushort uVar4;\n  FILE *pFVar5;\n  ulong uVar6;\n  ulong uVar7;\n  Elf_Internal_Shdr *pEVar8;\n  byte bVar9;\n  undefined *puVar10;\n  wchar_t wVar11;\n  int iVar12;\n  size_t sVar13;\n  int iVar14;\n  uint uVar15;\n  char *pcVar16;\n  uint *puVar17;\n  uint *puVar18;\n  void *pvVar19;\n  uint uVar20;\n  uint *puVar21;\n  char **filedata_01;\n  char *pcVar22;\n  size_t sVar23;\n  uint uVar24;\n  bfd_boolean bVar25;\n  uint uVar26;\n  ulong *strtab;\n  uint uVar27;\n  ulong *sec;\n  bool bVar28;\n  elf_vma eVar29;\n  elf_vma eVar30;\n  elf_vma eVar31;\n  FILE *pFVar32;\n  undefined4 in_stack_fffffefc;\n  undefined4 uVar33;\n  versioned_symbol_info *sym_info;\n  FILE *in_stack_ffffff00;\n  ushort *vna_other_00;\n  Elf_Internal_Sym *in_stack_ffffff04;\n  bfd_vma *local_f4;\n  Filedata *local_ec;\n  uint uStack_e8;\n  uint local_e0;\n  uint *local_dc;\n  Filedata *local_d4;\n  bfd_vma *local_cc;\n  bfd_vma *local_c4;\n  char *local_bc;\n  uint *local_b4;\n  uint local_b0;\n  bfd_vma *local_90;\n  undefined8 local_8c;\n  Elf_Internal_Sym *local_80;\n  size_t local_7c;\n  bfd_vma *local_78;\n  undefined8 local_74;\n  bfd_vma *local_6c;\n  uint local_5c;\n  int local_58;\n  uint local_54;\n  uint local_50;\n  ushort vna_other;\n  uchar nb [8];\n  uchar nc [8];\n  uchar local_24 [20];\n  \n  local_dc = (uint *)dynamic_info[4]._4_4_;\n  if (do_dyn_syms == 0 && do_syms == 0) {\n    if (do_histogram == 0) {\n      return 1;\n    }\n    local_e0 = (uint)dynamic_info[4];\n    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) goto LAB_00033f90;\n    eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n    if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      goto LAB_00032d84;\n    }\n    local_cc = (bfd_vma *)0x0;\n    local_78 = (bfd_vma *)0x0;\n    local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n    local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\nLAB_00033740:\n    local_54 = (uint)dynamic_info[4];\n    local_50 = dynamic_info[4]._4_4_;\n    if ((uint)dynamic_info[4] == 0 && dynamic_info[4]._4_4_ == 0) {\n      local_74 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_8c = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    local_74 = 0;\n    local_8c = 0;\n    local_90 = (bfd_vma *)0x0;\n    local_6c = (bfd_vma *)0x0;\n    local_54 = 0;\n    local_50 = 0;\nLAB_000333c0:\n    local_7c = (size_t)eVar31;\n    if (do_syms == 0) goto LAB_0003378f;\n    if (do_using_dynamic != 0) {\n      if ((dynamic_strings == (char *)0x0) || (dynamic_symbols == (Elf_Internal_Sym *)0x0)) {\n        if (do_dyn_syms != 0) goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar16);\n        }\n        else {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }\n        pvVar19 = xcmalloc(local_e0,1);\n        pcVar16 = (char *)0x0;\n        memset(pvVar19,0,local_e0);\n        if (eVar31 != 0) {\n          local_ec = (Filedata *)0x0;\n          do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);\n        }\n        free(pvVar19);\n      }\n      if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar22);\n        }\n        else {\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar15 = 0;\n          do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (do_dyn_syms == 0) goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = (Filedata *)filedata->section_headers;\n    if (local_ec != (Filedata *)0x0) {\nLAB_00033a43:\n      puVar10 = PTR_stdout_000b3fd8;\n      if ((filedata->file_header).e_shnum != 0) {\n        filedata_01 = &filedata->string_table;\n        local_b0 = 0;\n        do {\n          pFVar5 = local_ec->handle;\n          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;\n        } while (local_b0 < (filedata->file_header).e_shnum);\n      }\n      goto LAB_00033418;\n    }\n    if (do_syms == 0) goto LAB_00033418;\nLAB_000337b9:\n    pcVar16 = (char *)dcgettext(0,\n                                "\nDynamic symbol information is not available for displaying symbols.\n"\n                                ,5);\n    printf(pcVar16);\n    if (do_histogram == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)eVar31;\n    bVar25 = do_histogram;\n    if (local_78 != (bfd_vma *)0x0) {\n      pcVar16 = (char *)dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5);\n      printf(pcVar16,local_7c);\n      puVar21 = (uint *)calloc(local_7c,4);\n      if (puVar21 == (uint *)0x0) {\n        pcVar16 = "Out of memory allocating space for histogram buckets\n";\n        goto LAB_00034166;\n      }\n      pvVar19 = xcmalloc(local_e0,1);\n      memset(pvVar19,0,local_e0);\n      pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n      printf(pcVar16);\n      if (eVar31 == 0) {\n        free(pvVar19);\n        puVar17 = (uint *)calloc(1,4);\n        if (puVar17 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar15 = 0;\n        uVar24 = 0;\n        local_b4 = puVar21;\n        do {\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c != local_c4);\n        free(pvVar19);\n        puVar17 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar17 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }\n        puVar18 = puVar21;\n        do {\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        } while (puVar21 + local_7c != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (uVar15 != 0) {\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }\n      }\n      free(puVar17);\n      free(puVar21);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    local_e0 = (uint)dynamic_info[4];\n    eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n      if (do_histogram != 0) {\nLAB_00033f90:\n        uVar4 = (filedata->file_header).e_machine;\n        if ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }\n        wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n        iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n        if (iVar12 == 0) {\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }\n        if (do_using_dynamic != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (bfd_vma *)0x0;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        eVar31 = 0;\n        goto LAB_0003325f;\n      }\n      if (do_using_dynamic != 0) {\n        if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;\n        if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)\n        goto LAB_00033382;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\nLAB_00033293:\n        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;\n        goto LAB_00032d84;\n      }\n      if ((uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0) {\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_8c = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n      local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\n      eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      local_54 = local_e0;\n      local_50 = (uint)local_dc;\n      goto LAB_000333c0;\n    }\n    local_cc = (bfd_vma *)0x0;\n    local_78 = (bfd_vma *)0x0;\nLAB_0003325f:\n    if (dynamic_info_DT_GNU_HASH._4_4_ == 0 && (uint)dynamic_info_DT_GNU_HASH == 0)\n    goto LAB_00033740;\n    if (do_histogram == 0) {\n      if (do_using_dynamic != 0) goto LAB_00033293;\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n    iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n    if (iVar12 == 0) {\n      pFVar32 = (FILE *)filedata->handle;\n      uVar33 = 1;\n      sVar13 = fread(nc,0x10,1,pFVar32);\n      if (sVar13 != 1) {\n        pcVar16 = "Failed to read in number of buckets\n";\n        goto LAB_00034303;\n      }\n      eVar29 = (*byte_get)(nc,4);\n      eVar30 = (*byte_get)(nc + 4,4);\n      (*byte_get)(local_24,4);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      uVar33 = 0;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      local_8c = eVar30;\n      if (iVar14 != 0) {\n        pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);\n        error(pcVar16);\n        local_74 = 0;\n        local_6c = (bfd_vma *)0x0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      local_74._0_4_ = (uint)eVar29;\n      local_74._4_4_ = (uint)(eVar29 >> 0x20);\n      local_6c = get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74);\n      if (local_6c == (bfd_vma *)0x0) {\nLAB_000346fb:\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      if (local_74._4_4_ == 0 && (uint)local_74 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = (Filedata *)0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar15 = (uint)local_6c[local_54];\n        uVar24 = *(uint *)((int)(local_6c + local_54) + 4);\n        local_8c._0_4_ = (uint)eVar30;\n        local_8c._4_4_ = (uint)(eVar30 >> 0x20);\n        if (uVar24 != 0 || uVar15 != 0) {\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar28 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + bVar28;\n      } while (local_74._4_4_ != local_50 || (uint)local_74 != local_54);\n      if (uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff) goto LAB_000346fb;\n      uVar15 = (int)local_ec - (uint)local_8c;\n      uVar24 = (uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n      if (iVar12 != 0) {\nLAB_000347ff:\n        pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00033073:\n        pcVar16 = (char *)dcgettext(0,pcVar16,5);\n        error(pcVar16);\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      do {\n        pFVar32 = (FILE *)filedata->handle;\n        uVar33 = 1;\n        sVar13 = fread(nc,4,1,pFVar32);\n        if (sVar13 != 1) {\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }\n        if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;\n        bVar28 = 0xfffffffe < uVar15;\n        uVar15 = uVar15 + 1;\n        uVar24 = uVar24 + bVar28;\n        eVar29 = (*byte_get)(nc,4);\n      } while ((eVar29 & 1) == 0);\n      local_74 = CONCAT44(uVar24,uVar15);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      if (iVar14 != 0) goto LAB_000347ff;\n      local_90 = get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15);\n      eVar29 = local_74;\n      if (local_90 == (bfd_vma *)0x0) goto LAB_00034347;\n    }\n    else {\n      pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034303:\n      pcVar16 = (char *)dcgettext(0,pcVar16,5);\n      error(pcVar16);\n      local_74 = 0;\n      local_8c = 0;\n      local_6c = (bfd_vma *)0x0;\n      eVar29 = local_74;\nLAB_00034347:\n      local_74 = eVar29;\n      free(local_6c);\n      if (do_using_dynamic != 0) {\n        return 0;\n      }\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    if ((dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0) ||\n        ((uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (do_dyn_syms != 0) goto LAB_00033a30;\n    if (do_syms != 0) {\n      if (do_using_dynamic != 0) goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = (Filedata *)filedata->section_headers;\n      if (local_ec == (Filedata *)0x0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    if (do_histogram != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (bfd_vma *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    bVar25 = do_histogram;\n    free(local_78);\n    free(local_cc);\n  }\n  if (local_6c == (bfd_vma *)0x0) {\n    return 1;\n  }\n  if (bVar25 == 0) {\n    return 1;\n  }\n  pcVar16 = (char *)dcngettext(0,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu bucket):\n"\n                               ,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu buckets):\n"\n                               ,local_54,5);\n  printf(pcVar16,local_54);\n  puVar21 = (uint *)calloc(local_54,4);\n  if (puVar21 == (uint *)0x0) {\n    pcVar16 = "Out of memory allocating space for gnu histogram buckets\n";\n  }\n  else {\n    pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n    printf(pcVar16);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar17 = (uint *)calloc(1,4);\n      if (puVar17 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar21;\n      do {\n        uVar15 = *(uint *)((int)local_f4 + 4);\n        uVar24 = (uint)*local_f4;\n        if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }\n        local_f4 = local_f4 + 1;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 != local_f4);\n      puVar17 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar17 != (uint *)0x0) {\n        puVar18 = puVar21;\n        do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }\nLAB_000331cb:\n        free(puVar17);\n        free(puVar21);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar21);\n    pcVar16 = "Out of memory allocating space for gnu histogram counts\n";\n  }\nLAB_00034166:\n  pcVar16 = (char *)dcgettext(0,pcVar16,5);\n  error(pcVar16);\n  return 0;\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "process_symbol_table(Filedata *filedata)" identifier (parameter_list "(Filedata *filedata)" ( (parameter_declaration "Filedata *filedata" type_identifier (pointer_declarator "*filedata" * identifier)) ))) (compound_statement "{\n  Filedata *filedata_00;\n  bfd_vma *pbVar1;\n  double dVar2;\n  double dVar3;\n  ushort uVar4;\n  FILE *pFVar5;\n  ulong uVar6;\n  ulong uVar7;\n  Elf_Internal_Shdr *pEVar8;\n  byte bVar9;\n  undefined *puVar10;\n  wchar_t wVar11;\n  int iVar12;\n  size_t sVar13;\n  int iVar14;\n  uint uVar15;\n  char *pcVar16;\n  uint *puVar17;\n  uint *puVar18;\n  void *pvVar19;\n  uint uVar20;\n  uint *puVar21;\n  char **filedata_01;\n  char *pcVar22;\n  size_t sVar23;\n  uint uVar24;\n  bfd_boolean bVar25;\n  uint uVar26;\n  ulong *strtab;\n  uint uVar27;\n  ulong *sec;\n  bool bVar28;\n  elf_vma eVar29;\n  elf_vma eVar30;\n  elf_vma eVar31;\n  FILE *pFVar32;\n  undefined4 in_stack_fffffefc;\n  undefined4 uVar33;\n  versioned_symbol_info *sym_info;\n  FILE *in_stack_ffffff00;\n  ushort *vna_other_00;\n  Elf_Internal_Sym *in_stack_ffffff04;\n  bfd_vma *local_f4;\n  Filedata *local_ec;\n  uint uStack_e8;\n  uint local_e0;\n  uint *local_dc;\n  Filedata *local_d4;\n  bfd_vma *local_cc;\n  bfd_vma *local_c4;\n  char *local_bc;\n  uint *local_b4;\n  uint local_b0;\n  bfd_vma *local_90;\n  undefined8 local_8c;\n  Elf_Internal_Sym *local_80;\n  size_t local_7c;\n  bfd_vma *local_78;\n  undefined8 local_74;\n  bfd_vma *local_6c;\n  uint local_5c;\n  int local_58;\n  uint local_54;\n  uint local_50;\n  ushort vna_other;\n  uchar nb [8];\n  uchar nc [8];\n  uchar local_24 [20];\n  \n  local_dc = (uint *)dynamic_info[4]._4_4_;\n  if (do_dyn_syms == 0 && do_syms == 0) {\n    if (do_histogram == 0) {\n      return 1;\n    }\n    local_e0 = (uint)dynamic_info[4];\n    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) goto LAB_00033f90;\n    eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n    if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      goto LAB_00032d84;\n    }\n    local_cc = (bfd_vma *)0x0;\n    local_78 = (bfd_vma *)0x0;\n    local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n    local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\nLAB_00033740:\n    local_54 = (uint)dynamic_info[4];\n    local_50 = dynamic_info[4]._4_4_;\n    if ((uint)dynamic_info[4] == 0 && dynamic_info[4]._4_4_ == 0) {\n      local_74 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_8c = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    local_74 = 0;\n    local_8c = 0;\n    local_90 = (bfd_vma *)0x0;\n    local_6c = (bfd_vma *)0x0;\n    local_54 = 0;\n    local_50 = 0;\nLAB_000333c0:\n    local_7c = (size_t)eVar31;\n    if (do_syms == 0) goto LAB_0003378f;\n    if (do_using_dynamic != 0) {\n      if ((dynamic_strings == (char *)0x0) || (dynamic_symbols == (Elf_Internal_Sym *)0x0)) {\n        if (do_dyn_syms != 0) goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar16);\n        }\n        else {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }\n        pvVar19 = xcmalloc(local_e0,1);\n        pcVar16 = (char *)0x0;\n        memset(pvVar19,0,local_e0);\n        if (eVar31 != 0) {\n          local_ec = (Filedata *)0x0;\n          do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);\n        }\n        free(pvVar19);\n      }\n      if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar22);\n        }\n        else {\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar15 = 0;\n          do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (do_dyn_syms == 0) goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = (Filedata *)filedata->section_headers;\n    if (local_ec != (Filedata *)0x0) {\nLAB_00033a43:\n      puVar10 = PTR_stdout_000b3fd8;\n      if ((filedata->file_header).e_shnum != 0) {\n        filedata_01 = &filedata->string_table;\n        local_b0 = 0;\n        do {\n          pFVar5 = local_ec->handle;\n          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;\n        } while (local_b0 < (filedata->file_header).e_shnum);\n      }\n      goto LAB_00033418;\n    }\n    if (do_syms == 0) goto LAB_00033418;\nLAB_000337b9:\n    pcVar16 = (char *)dcgettext(0,\n                                "\nDynamic symbol information is not available for displaying symbols.\n"\n                                ,5);\n    printf(pcVar16);\n    if (do_histogram == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)eVar31;\n    bVar25 = do_histogram;\n    if (local_78 != (bfd_vma *)0x0) {\n      pcVar16 = (char *)dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5);\n      printf(pcVar16,local_7c);\n      puVar21 = (uint *)calloc(local_7c,4);\n      if (puVar21 == (uint *)0x0) {\n        pcVar16 = "Out of memory allocating space for histogram buckets\n";\n        goto LAB_00034166;\n      }\n      pvVar19 = xcmalloc(local_e0,1);\n      memset(pvVar19,0,local_e0);\n      pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n      printf(pcVar16);\n      if (eVar31 == 0) {\n        free(pvVar19);\n        puVar17 = (uint *)calloc(1,4);\n        if (puVar17 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar15 = 0;\n        uVar24 = 0;\n        local_b4 = puVar21;\n        do {\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c != local_c4);\n        free(pvVar19);\n        puVar17 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar17 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }\n        puVar18 = puVar21;\n        do {\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        } while (puVar21 + local_7c != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (uVar15 != 0) {\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }\n      }\n      free(puVar17);\n      free(puVar21);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    local_e0 = (uint)dynamic_info[4];\n    eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n      if (do_histogram != 0) {\nLAB_00033f90:\n        uVar4 = (filedata->file_header).e_machine;\n        if ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }\n        wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n        iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n        if (iVar12 == 0) {\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }\n        if (do_using_dynamic != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (bfd_vma *)0x0;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        eVar31 = 0;\n        goto LAB_0003325f;\n      }\n      if (do_using_dynamic != 0) {\n        if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;\n        if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)\n        goto LAB_00033382;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\nLAB_00033293:\n        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;\n        goto LAB_00032d84;\n      }\n      if ((uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0) {\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_8c = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n      local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\n      eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      local_54 = local_e0;\n      local_50 = (uint)local_dc;\n      goto LAB_000333c0;\n    }\n    local_cc = (bfd_vma *)0x0;\n    local_78 = (bfd_vma *)0x0;\nLAB_0003325f:\n    if (dynamic_info_DT_GNU_HASH._4_4_ == 0 && (uint)dynamic_info_DT_GNU_HASH == 0)\n    goto LAB_00033740;\n    if (do_histogram == 0) {\n      if (do_using_dynamic != 0) goto LAB_00033293;\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n    iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n    if (iVar12 == 0) {\n      pFVar32 = (FILE *)filedata->handle;\n      uVar33 = 1;\n      sVar13 = fread(nc,0x10,1,pFVar32);\n      if (sVar13 != 1) {\n        pcVar16 = "Failed to read in number of buckets\n";\n        goto LAB_00034303;\n      }\n      eVar29 = (*byte_get)(nc,4);\n      eVar30 = (*byte_get)(nc + 4,4);\n      (*byte_get)(local_24,4);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      uVar33 = 0;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      local_8c = eVar30;\n      if (iVar14 != 0) {\n        pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);\n        error(pcVar16);\n        local_74 = 0;\n        local_6c = (bfd_vma *)0x0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      local_74._0_4_ = (uint)eVar29;\n      local_74._4_4_ = (uint)(eVar29 >> 0x20);\n      local_6c = get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74);\n      if (local_6c == (bfd_vma *)0x0) {\nLAB_000346fb:\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      if (local_74._4_4_ == 0 && (uint)local_74 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = (Filedata *)0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar15 = (uint)local_6c[local_54];\n        uVar24 = *(uint *)((int)(local_6c + local_54) + 4);\n        local_8c._0_4_ = (uint)eVar30;\n        local_8c._4_4_ = (uint)(eVar30 >> 0x20);\n        if (uVar24 != 0 || uVar15 != 0) {\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar28 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + bVar28;\n      } while (local_74._4_4_ != local_50 || (uint)local_74 != local_54);\n      if (uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff) goto LAB_000346fb;\n      uVar15 = (int)local_ec - (uint)local_8c;\n      uVar24 = (uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n      if (iVar12 != 0) {\nLAB_000347ff:\n        pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00033073:\n        pcVar16 = (char *)dcgettext(0,pcVar16,5);\n        error(pcVar16);\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      do {\n        pFVar32 = (FILE *)filedata->handle;\n        uVar33 = 1;\n        sVar13 = fread(nc,4,1,pFVar32);\n        if (sVar13 != 1) {\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }\n        if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;\n        bVar28 = 0xfffffffe < uVar15;\n        uVar15 = uVar15 + 1;\n        uVar24 = uVar24 + bVar28;\n        eVar29 = (*byte_get)(nc,4);\n      } while ((eVar29 & 1) == 0);\n      local_74 = CONCAT44(uVar24,uVar15);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      if (iVar14 != 0) goto LAB_000347ff;\n      local_90 = get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15);\n      eVar29 = local_74;\n      if (local_90 == (bfd_vma *)0x0) goto LAB_00034347;\n    }\n    else {\n      pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034303:\n      pcVar16 = (char *)dcgettext(0,pcVar16,5);\n      error(pcVar16);\n      local_74 = 0;\n      local_8c = 0;\n      local_6c = (bfd_vma *)0x0;\n      eVar29 = local_74;\nLAB_00034347:\n      local_74 = eVar29;\n      free(local_6c);\n      if (do_using_dynamic != 0) {\n        return 0;\n      }\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    if ((dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0) ||\n        ((uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (do_dyn_syms != 0) goto LAB_00033a30;\n    if (do_syms != 0) {\n      if (do_using_dynamic != 0) goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = (Filedata *)filedata->section_headers;\n      if (local_ec == (Filedata *)0x0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    if (do_histogram != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (bfd_vma *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    bVar25 = do_histogram;\n    free(local_78);\n    free(local_cc);\n  }\n  if (local_6c == (bfd_vma *)0x0) {\n    return 1;\n  }\n  if (bVar25 == 0) {\n    return 1;\n  }\n  pcVar16 = (char *)dcngettext(0,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu bucket):\n"\n                               ,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu buckets):\n"\n                               ,local_54,5);\n  printf(pcVar16,local_54);\n  puVar21 = (uint *)calloc(local_54,4);\n  if (puVar21 == (uint *)0x0) {\n    pcVar16 = "Out of memory allocating space for gnu histogram buckets\n";\n  }\n  else {\n    pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n    printf(pcVar16);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar17 = (uint *)calloc(1,4);\n      if (puVar17 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar21;\n      do {\n        uVar15 = *(uint *)((int)local_f4 + 4);\n        uVar24 = (uint)*local_f4;\n        if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }\n        local_f4 = local_f4 + 1;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 != local_f4);\n      puVar17 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar17 != (uint *)0x0) {\n        puVar18 = puVar21;\n        do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }\nLAB_000331cb:\n        free(puVar17);\n        free(puVar21);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar21);\n    pcVar16 = "Out of memory allocating space for gnu histogram counts\n";\n  }\nLAB_00034166:\n  pcVar16 = (char *)dcgettext(0,pcVar16,5);\n  error(pcVar16);\n  return 0;\n}" { (declaration "Filedata *filedata_00;" type_identifier (pointer_declarator "*filedata_00" * identifier) ;) (declaration "bfd_vma *pbVar1;" type_identifier (pointer_declarator "*pbVar1" * identifier) ;) (declaration "double dVar2;" primitive_type identifier ;) (declaration "double dVar3;" primitive_type identifier ;) (declaration "ushort uVar4;" type_identifier identifier ;) (declaration "FILE *pFVar5;" type_identifier (pointer_declarator "*pFVar5" * identifier) ;) (declaration "ulong uVar6;" type_identifier identifier ;) (declaration "ulong uVar7;" type_identifier identifier ;) (declaration "Elf_Internal_Shdr *pEVar8;" type_identifier (pointer_declarator "*pEVar8" * identifier) ;) (declaration "byte bVar9;" type_identifier identifier ;) (declaration "undefined *puVar10;" type_identifier (pointer_declarator "*puVar10" * identifier) ;) (declaration "wchar_t wVar11;" type_identifier identifier ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "size_t sVar13;" primitive_type identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "uint uVar15;" type_identifier identifier ;) (declaration "char *pcVar16;" primitive_type (pointer_declarator "*pcVar16" * identifier) ;) (declaration "uint *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "uint *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "void *pvVar19;" primitive_type (pointer_declarator "*pvVar19" * identifier) ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "uint *puVar21;" type_identifier (pointer_declarator "*puVar21" * identifier) ;) (declaration "char **filedata_01;" primitive_type (pointer_declarator "**filedata_01" * (pointer_declarator "*filedata_01" * identifier)) ;) (declaration "char *pcVar22;" primitive_type (pointer_declarator "*pcVar22" * identifier) ;) (declaration "size_t sVar23;" primitive_type identifier ;) (declaration "uint uVar24;" type_identifier identifier ;) (declaration "bfd_boolean bVar25;" type_identifier identifier ;) (declaration "uint uVar26;" type_identifier identifier ;) (declaration "ulong *strtab;" type_identifier (pointer_declarator "*strtab" * identifier) ;) (declaration "uint uVar27;" type_identifier identifier ;) (declaration "ulong *sec;" type_identifier (pointer_declarator "*sec" * identifier) ;) (declaration "bool bVar28;" primitive_type identifier ;) (declaration "elf_vma eVar29;" type_identifier identifier ;) (declaration "elf_vma eVar30;" type_identifier identifier ;) (declaration "elf_vma eVar31;" type_identifier identifier ;) (declaration "FILE *pFVar32;" type_identifier (pointer_declarator "*pFVar32" * identifier) ;) (declaration "undefined4 in_stack_fffffefc;" type_identifier identifier ;) (declaration "undefined4 uVar33;" type_identifier identifier ;) (declaration "versioned_symbol_info *sym_info;" type_identifier (pointer_declarator "*sym_info" * identifier) ;) (declaration "FILE *in_stack_ffffff00;" type_identifier (pointer_declarator "*in_stack_ffffff00" * identifier) ;) (declaration "ushort *vna_other_00;" type_identifier (pointer_declarator "*vna_other_00" * identifier) ;) (declaration "Elf_Internal_Sym *in_stack_ffffff04;" type_identifier (pointer_declarator "*in_stack_ffffff04" * identifier) ;) (declaration "bfd_vma *local_f4;" type_identifier (pointer_declarator "*local_f4" * identifier) ;) (declaration "Filedata *local_ec;" type_identifier (pointer_declarator "*local_ec" * identifier) ;) (declaration "uint uStack_e8;" type_identifier identifier ;) (declaration "uint local_e0;" type_identifier identifier ;) (declaration "uint *local_dc;" type_identifier (pointer_declarator "*local_dc" * identifier) ;) (declaration "Filedata *local_d4;" type_identifier (pointer_declarator "*local_d4" * identifier) ;) (declaration "bfd_vma *local_cc;" type_identifier (pointer_declarator "*local_cc" * identifier) ;) (declaration "bfd_vma *local_c4;" type_identifier (pointer_declarator "*local_c4" * identifier) ;) (declaration "char *local_bc;" primitive_type (pointer_declarator "*local_bc" * identifier) ;) (declaration "uint *local_b4;" type_identifier (pointer_declarator "*local_b4" * identifier) ;) (declaration "uint local_b0;" type_identifier identifier ;) (declaration "bfd_vma *local_90;" type_identifier (pointer_declarator "*local_90" * identifier) ;) (declaration "undefined8 local_8c;" type_identifier identifier ;) (declaration "Elf_Internal_Sym *local_80;" type_identifier (pointer_declarator "*local_80" * identifier) ;) (declaration "size_t local_7c;" primitive_type identifier ;) (declaration "bfd_vma *local_78;" type_identifier (pointer_declarator "*local_78" * identifier) ;) (declaration "undefined8 local_74;" type_identifier identifier ;) (declaration "bfd_vma *local_6c;" type_identifier (pointer_declarator "*local_6c" * identifier) ;) (declaration "uint local_5c;" type_identifier identifier ;) (declaration "int local_58;" primitive_type identifier ;) (declaration "uint local_54;" type_identifier identifier ;) (declaration "uint local_50;" type_identifier identifier ;) (declaration "ushort vna_other;" type_identifier identifier ;) (declaration "uchar nb [8];" type_identifier (array_declarator "nb [8]" identifier [ number_literal ]) ;) (declaration "uchar nc [8];" type_identifier (array_declarator "nc [8]" identifier [ number_literal ]) ;) (declaration "uchar local_24 [20];" type_identifier (array_declarator "local_24 [20]" identifier [ number_literal ]) ;) (expression_statement "local_dc = (uint *)dynamic_info[4]._4_4_;" (assignment_expression "local_dc = (uint *)dynamic_info[4]._4_4_" identifier = (cast_expression "(uint *)dynamic_info[4]._4_4_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "dynamic_info[4]._4_4_" (subscript_expression "dynamic_info[4]" identifier [ number_literal ]) . field_identifier))) ;) (if_statement "if (do_dyn_syms == 0 && do_syms == 0) {\n    if (do_histogram == 0) {\n      return 1;\n    }\n    local_e0 = (uint)dynamic_info[4];\n    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) goto LAB_00033f90;\n    eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n    if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      goto LAB_00032d84;\n    }\n    local_cc = (bfd_vma *)0x0;\n    local_78 = (bfd_vma *)0x0;\n    local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n    local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\nLAB_00033740:\n    local_54 = (uint)dynamic_info[4];\n    local_50 = dynamic_info[4]._4_4_;\n    if ((uint)dynamic_info[4] == 0 && dynamic_info[4]._4_4_ == 0) {\n      local_74 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_8c = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    local_74 = 0;\n    local_8c = 0;\n    local_90 = (bfd_vma *)0x0;\n    local_6c = (bfd_vma *)0x0;\n    local_54 = 0;\n    local_50 = 0;\nLAB_000333c0:\n    local_7c = (size_t)eVar31;\n    if (do_syms == 0) goto LAB_0003378f;\n    if (do_using_dynamic != 0) {\n      if ((dynamic_strings == (char *)0x0) || (dynamic_symbols == (Elf_Internal_Sym *)0x0)) {\n        if (do_dyn_syms != 0) goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar16);\n        }\n        else {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }\n        pvVar19 = xcmalloc(local_e0,1);\n        pcVar16 = (char *)0x0;\n        memset(pvVar19,0,local_e0);\n        if (eVar31 != 0) {\n          local_ec = (Filedata *)0x0;\n          do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);\n        }\n        free(pvVar19);\n      }\n      if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar22);\n        }\n        else {\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar15 = 0;\n          do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (do_dyn_syms == 0) goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = (Filedata *)filedata->section_headers;\n    if (local_ec != (Filedata *)0x0) {\nLAB_00033a43:\n      puVar10 = PTR_stdout_000b3fd8;\n      if ((filedata->file_header).e_shnum != 0) {\n        filedata_01 = &filedata->string_table;\n        local_b0 = 0;\n        do {\n          pFVar5 = local_ec->handle;\n          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;\n        } while (local_b0 < (filedata->file_header).e_shnum);\n      }\n      goto LAB_00033418;\n    }\n    if (do_syms == 0) goto LAB_00033418;\nLAB_000337b9:\n    pcVar16 = (char *)dcgettext(0,\n                                "\nDynamic symbol information is not available for displaying symbols.\n"\n                                ,5);\n    printf(pcVar16);\n    if (do_histogram == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)eVar31;\n    bVar25 = do_histogram;\n    if (local_78 != (bfd_vma *)0x0) {\n      pcVar16 = (char *)dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5);\n      printf(pcVar16,local_7c);\n      puVar21 = (uint *)calloc(local_7c,4);\n      if (puVar21 == (uint *)0x0) {\n        pcVar16 = "Out of memory allocating space for histogram buckets\n";\n        goto LAB_00034166;\n      }\n      pvVar19 = xcmalloc(local_e0,1);\n      memset(pvVar19,0,local_e0);\n      pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n      printf(pcVar16);\n      if (eVar31 == 0) {\n        free(pvVar19);\n        puVar17 = (uint *)calloc(1,4);\n        if (puVar17 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar15 = 0;\n        uVar24 = 0;\n        local_b4 = puVar21;\n        do {\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c != local_c4);\n        free(pvVar19);\n        puVar17 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar17 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }\n        puVar18 = puVar21;\n        do {\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        } while (puVar21 + local_7c != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (uVar15 != 0) {\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }\n      }\n      free(puVar17);\n      free(puVar21);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    local_e0 = (uint)dynamic_info[4];\n    eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n      if (do_histogram != 0) {\nLAB_00033f90:\n        uVar4 = (filedata->file_header).e_machine;\n        if ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }\n        wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n        iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n        if (iVar12 == 0) {\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }\n        if (do_using_dynamic != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (bfd_vma *)0x0;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        eVar31 = 0;\n        goto LAB_0003325f;\n      }\n      if (do_using_dynamic != 0) {\n        if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;\n        if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)\n        goto LAB_00033382;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\nLAB_00033293:\n        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;\n        goto LAB_00032d84;\n      }\n      if ((uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0) {\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_8c = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n      local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\n      eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      local_54 = local_e0;\n      local_50 = (uint)local_dc;\n      goto LAB_000333c0;\n    }\n    local_cc = (bfd_vma *)0x0;\n    local_78 = (bfd_vma *)0x0;\nLAB_0003325f:\n    if (dynamic_info_DT_GNU_HASH._4_4_ == 0 && (uint)dynamic_info_DT_GNU_HASH == 0)\n    goto LAB_00033740;\n    if (do_histogram == 0) {\n      if (do_using_dynamic != 0) goto LAB_00033293;\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n    iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n    if (iVar12 == 0) {\n      pFVar32 = (FILE *)filedata->handle;\n      uVar33 = 1;\n      sVar13 = fread(nc,0x10,1,pFVar32);\n      if (sVar13 != 1) {\n        pcVar16 = "Failed to read in number of buckets\n";\n        goto LAB_00034303;\n      }\n      eVar29 = (*byte_get)(nc,4);\n      eVar30 = (*byte_get)(nc + 4,4);\n      (*byte_get)(local_24,4);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      uVar33 = 0;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      local_8c = eVar30;\n      if (iVar14 != 0) {\n        pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);\n        error(pcVar16);\n        local_74 = 0;\n        local_6c = (bfd_vma *)0x0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      local_74._0_4_ = (uint)eVar29;\n      local_74._4_4_ = (uint)(eVar29 >> 0x20);\n      local_6c = get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74);\n      if (local_6c == (bfd_vma *)0x0) {\nLAB_000346fb:\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      if (local_74._4_4_ == 0 && (uint)local_74 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = (Filedata *)0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar15 = (uint)local_6c[local_54];\n        uVar24 = *(uint *)((int)(local_6c + local_54) + 4);\n        local_8c._0_4_ = (uint)eVar30;\n        local_8c._4_4_ = (uint)(eVar30 >> 0x20);\n        if (uVar24 != 0 || uVar15 != 0) {\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar28 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + bVar28;\n      } while (local_74._4_4_ != local_50 || (uint)local_74 != local_54);\n      if (uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff) goto LAB_000346fb;\n      uVar15 = (int)local_ec - (uint)local_8c;\n      uVar24 = (uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n      if (iVar12 != 0) {\nLAB_000347ff:\n        pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00033073:\n        pcVar16 = (char *)dcgettext(0,pcVar16,5);\n        error(pcVar16);\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      do {\n        pFVar32 = (FILE *)filedata->handle;\n        uVar33 = 1;\n        sVar13 = fread(nc,4,1,pFVar32);\n        if (sVar13 != 1) {\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }\n        if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;\n        bVar28 = 0xfffffffe < uVar15;\n        uVar15 = uVar15 + 1;\n        uVar24 = uVar24 + bVar28;\n        eVar29 = (*byte_get)(nc,4);\n      } while ((eVar29 & 1) == 0);\n      local_74 = CONCAT44(uVar24,uVar15);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      if (iVar14 != 0) goto LAB_000347ff;\n      local_90 = get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15);\n      eVar29 = local_74;\n      if (local_90 == (bfd_vma *)0x0) goto LAB_00034347;\n    }\n    else {\n      pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034303:\n      pcVar16 = (char *)dcgettext(0,pcVar16,5);\n      error(pcVar16);\n      local_74 = 0;\n      local_8c = 0;\n      local_6c = (bfd_vma *)0x0;\n      eVar29 = local_74;\nLAB_00034347:\n      local_74 = eVar29;\n      free(local_6c);\n      if (do_using_dynamic != 0) {\n        return 0;\n      }\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    if ((dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0) ||\n        ((uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (do_dyn_syms != 0) goto LAB_00033a30;\n    if (do_syms != 0) {\n      if (do_using_dynamic != 0) goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = (Filedata *)filedata->section_headers;\n      if (local_ec == (Filedata *)0x0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    if (do_histogram != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (bfd_vma *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    bVar25 = do_histogram;\n    free(local_78);\n    free(local_cc);\n  }" if (parenthesized_expression "(do_dyn_syms == 0 && do_syms == 0)" ( (binary_expression "do_dyn_syms == 0 && do_syms == 0" (binary_expression "do_dyn_syms == 0" identifier == number_literal) && (binary_expression "do_syms == 0" identifier == number_literal)) )) (compound_statement "{\n    if (do_histogram == 0) {\n      return 1;\n    }\n    local_e0 = (uint)dynamic_info[4];\n    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) goto LAB_00033f90;\n    eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n    if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      goto LAB_00032d84;\n    }\n    local_cc = (bfd_vma *)0x0;\n    local_78 = (bfd_vma *)0x0;\n    local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n    local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\nLAB_00033740:\n    local_54 = (uint)dynamic_info[4];\n    local_50 = dynamic_info[4]._4_4_;\n    if ((uint)dynamic_info[4] == 0 && dynamic_info[4]._4_4_ == 0) {\n      local_74 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_8c = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    local_74 = 0;\n    local_8c = 0;\n    local_90 = (bfd_vma *)0x0;\n    local_6c = (bfd_vma *)0x0;\n    local_54 = 0;\n    local_50 = 0;\nLAB_000333c0:\n    local_7c = (size_t)eVar31;\n    if (do_syms == 0) goto LAB_0003378f;\n    if (do_using_dynamic != 0) {\n      if ((dynamic_strings == (char *)0x0) || (dynamic_symbols == (Elf_Internal_Sym *)0x0)) {\n        if (do_dyn_syms != 0) goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar16);\n        }\n        else {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }\n        pvVar19 = xcmalloc(local_e0,1);\n        pcVar16 = (char *)0x0;\n        memset(pvVar19,0,local_e0);\n        if (eVar31 != 0) {\n          local_ec = (Filedata *)0x0;\n          do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);\n        }\n        free(pvVar19);\n      }\n      if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar22);\n        }\n        else {\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar15 = 0;\n          do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (do_dyn_syms == 0) goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = (Filedata *)filedata->section_headers;\n    if (local_ec != (Filedata *)0x0) {\nLAB_00033a43:\n      puVar10 = PTR_stdout_000b3fd8;\n      if ((filedata->file_header).e_shnum != 0) {\n        filedata_01 = &filedata->string_table;\n        local_b0 = 0;\n        do {\n          pFVar5 = local_ec->handle;\n          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;\n        } while (local_b0 < (filedata->file_header).e_shnum);\n      }\n      goto LAB_00033418;\n    }\n    if (do_syms == 0) goto LAB_00033418;\nLAB_000337b9:\n    pcVar16 = (char *)dcgettext(0,\n                                "\nDynamic symbol information is not available for displaying symbols.\n"\n                                ,5);\n    printf(pcVar16);\n    if (do_histogram == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)eVar31;\n    bVar25 = do_histogram;\n    if (local_78 != (bfd_vma *)0x0) {\n      pcVar16 = (char *)dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5);\n      printf(pcVar16,local_7c);\n      puVar21 = (uint *)calloc(local_7c,4);\n      if (puVar21 == (uint *)0x0) {\n        pcVar16 = "Out of memory allocating space for histogram buckets\n";\n        goto LAB_00034166;\n      }\n      pvVar19 = xcmalloc(local_e0,1);\n      memset(pvVar19,0,local_e0);\n      pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n      printf(pcVar16);\n      if (eVar31 == 0) {\n        free(pvVar19);\n        puVar17 = (uint *)calloc(1,4);\n        if (puVar17 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar15 = 0;\n        uVar24 = 0;\n        local_b4 = puVar21;\n        do {\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c != local_c4);\n        free(pvVar19);\n        puVar17 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar17 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }\n        puVar18 = puVar21;\n        do {\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        } while (puVar21 + local_7c != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (uVar15 != 0) {\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }\n      }\n      free(puVar17);\n      free(puVar21);\n      goto LAB_000337ff;\n    }\n  }" { (if_statement "if (do_histogram == 0) {\n      return 1;\n    }" if (parenthesized_expression "(do_histogram == 0)" ( (binary_expression "do_histogram == 0" identifier == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "local_e0 = (uint)dynamic_info[4];" (assignment_expression "local_e0 = (uint)dynamic_info[4]" identifier = (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ]))) ;) (if_statement "if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) goto LAB_00033f90;" if (parenthesized_expression "(dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0)" ( (binary_expression "dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0" (binary_expression "dynamic_info[4]._4_4_ != 0" (field_expression "dynamic_info[4]._4_4_" (subscript_expression "dynamic_info[4]" identifier [ number_literal ]) . field_identifier) != number_literal) || (binary_expression "(uint)dynamic_info[4] != 0" (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ])) != number_literal)) )) (goto_statement "goto LAB_00033f90;" goto statement_identifier ;)) (expression_statement "eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);" (assignment_expression "eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" identifier = (call_expression "CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" identifier (argument_list "(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" ( (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier) , (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (if_statement "if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      goto LAB_00032d84;\n    }" if (parenthesized_expression "(dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0)" ( (binary_expression "dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0" (binary_expression "dynamic_info_DT_GNU_HASH._4_4_ != 0" (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier) != number_literal) || (binary_expression "(uint)dynamic_info_DT_GNU_HASH != 0" (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier) != number_literal)) )) (compound_statement "{\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      goto LAB_00032d84;\n    }" { (expression_statement "local_cc = (bfd_vma *)0x0;" (assignment_expression "local_cc = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (bfd_vma *)0x0;" (assignment_expression "local_78 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);" (assignment_expression "eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" identifier = (call_expression "CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" identifier (argument_list "(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" ( (field_expression "dynamic_info[4]._4_4_" (subscript_expression "dynamic_info[4]" identifier [ number_literal ]) . field_identifier) , (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ])) )))) ;) (goto_statement "goto LAB_00032d84;" goto statement_identifier ;) })) (expression_statement "local_cc = (bfd_vma *)0x0;" (assignment_expression "local_cc = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (bfd_vma *)0x0;" (assignment_expression "local_78 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_e0 = (uint)dynamic_info_DT_GNU_HASH;" (assignment_expression "local_e0 = (uint)dynamic_info_DT_GNU_HASH" identifier = (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;" (assignment_expression "local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_" identifier = (cast_expression "(uint *)dynamic_info_DT_GNU_HASH._4_4_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier))) ;) (labeled_statement "LAB_00033740:\n    local_54 = (uint)dynamic_info[4];" statement_identifier : (expression_statement "local_54 = (uint)dynamic_info[4];" (assignment_expression "local_54 = (uint)dynamic_info[4]" identifier = (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ]))) ;)) (expression_statement "local_50 = dynamic_info[4]._4_4_;" (assignment_expression "local_50 = dynamic_info[4]._4_4_" identifier = (field_expression "dynamic_info[4]._4_4_" (subscript_expression "dynamic_info[4]" identifier [ number_literal ]) . field_identifier)) ;) (if_statement "if ((uint)dynamic_info[4] == 0 && dynamic_info[4]._4_4_ == 0) {\n      local_74 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_8c = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      goto LAB_0003378f;\n    }" if (parenthesized_expression "((uint)dynamic_info[4] == 0 && dynamic_info[4]._4_4_ == 0)" ( (binary_expression "(uint)dynamic_info[4] == 0 && dynamic_info[4]._4_4_ == 0" (binary_expression "(uint)dynamic_info[4] == 0" (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ])) == number_literal) && (binary_expression "dynamic_info[4]._4_4_ == 0" (field_expression "dynamic_info[4]._4_4_" (subscript_expression "dynamic_info[4]" identifier [ number_literal ]) . field_identifier) == number_literal)) )) (compound_statement "{\n      local_74 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_8c = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      goto LAB_0003378f;\n    }" { (expression_statement "local_74 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);" (assignment_expression "local_74 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" identifier = (call_expression "CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" identifier (argument_list "(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" ( (field_expression "dynamic_info[4]._4_4_" (subscript_expression "dynamic_info[4]" identifier [ number_literal ]) . field_identifier) , (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ])) )))) ;) (expression_statement "local_8c = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);" (assignment_expression "local_8c = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" identifier = (call_expression "CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" identifier (argument_list "(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" ( (field_expression "dynamic_info[4]._4_4_" (subscript_expression "dynamic_info[4]" identifier [ number_literal ]) . field_identifier) , (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ])) )))) ;) (expression_statement "local_90 = (bfd_vma *)0x0;" (assignment_expression "local_90 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (bfd_vma *)0x0;" (assignment_expression "local_6c = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0003378f;" goto statement_identifier ;) })) (labeled_statement "LAB_000332bc:\n    local_74 = 0;" statement_identifier : (expression_statement "local_74 = 0;" (assignment_expression "local_74 = 0" identifier = number_literal) ;)) (expression_statement "local_8c = 0;" (assignment_expression "local_8c = 0" identifier = number_literal) ;) (expression_statement "local_90 = (bfd_vma *)0x0;" (assignment_expression "local_90 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (bfd_vma *)0x0;" (assignment_expression "local_6c = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000333c0:\n    local_7c = (size_t)eVar31;" statement_identifier : (expression_statement "local_7c = (size_t)eVar31;" (assignment_expression "local_7c = (size_t)eVar31" identifier = (cast_expression "(size_t)eVar31" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;)) (if_statement "if (do_syms == 0) goto LAB_0003378f;" if (parenthesized_expression "(do_syms == 0)" ( (binary_expression "do_syms == 0" identifier == number_literal) )) (goto_statement "goto LAB_0003378f;" goto statement_identifier ;)) (if_statement "if (do_using_dynamic != 0) {\n      if ((dynamic_strings == (char *)0x0) || (dynamic_symbols == (Elf_Internal_Sym *)0x0)) {\n        if (do_dyn_syms != 0) goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar16);\n        }\n        else {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }\n        pvVar19 = xcmalloc(local_e0,1);\n        pcVar16 = (char *)0x0;\n        memset(pvVar19,0,local_e0);\n        if (eVar31 != 0) {\n          local_ec = (Filedata *)0x0;\n          do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);\n        }\n        free(pvVar19);\n      }\n      if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar22);\n        }\n        else {\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar15 = 0;\n          do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);\n        }\n      }\n      goto LAB_00033418;\n    }" if (parenthesized_expression "(do_using_dynamic != 0)" ( (binary_expression "do_using_dynamic != 0" identifier != number_literal) )) (compound_statement "{\n      if ((dynamic_strings == (char *)0x0) || (dynamic_symbols == (Elf_Internal_Sym *)0x0)) {\n        if (do_dyn_syms != 0) goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar16);\n        }\n        else {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }\n        pvVar19 = xcmalloc(local_e0,1);\n        pcVar16 = (char *)0x0;\n        memset(pvVar19,0,local_e0);\n        if (eVar31 != 0) {\n          local_ec = (Filedata *)0x0;\n          do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);\n        }\n        free(pvVar19);\n      }\n      if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar22);\n        }\n        else {\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar15 = 0;\n          do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);\n        }\n      }\n      goto LAB_00033418;\n    }" { (if_statement "if ((dynamic_strings == (char *)0x0) || (dynamic_symbols == (Elf_Internal_Sym *)0x0)) {\n        if (do_dyn_syms != 0) goto LAB_00033a30;\n        goto LAB_000337b9;\n      }" if (parenthesized_expression "((dynamic_strings == (char *)0x0) || (dynamic_symbols == (Elf_Internal_Sym *)0x0))" ( (binary_expression "(dynamic_strings == (char *)0x0) || (dynamic_symbols == (Elf_Internal_Sym *)0x0)" (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)) )) || (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 (do_dyn_syms != 0) goto LAB_00033a30;\n        goto LAB_000337b9;\n      }" { (if_statement "if (do_dyn_syms != 0) goto LAB_00033a30;" if (parenthesized_expression "(do_dyn_syms != 0)" ( (binary_expression "do_dyn_syms != 0" identifier != number_literal) )) (goto_statement "goto LAB_00033a30;" goto statement_identifier ;)) (goto_statement "goto LAB_000337b9;" goto statement_identifier ;) })) (if_statement "if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar16);\n        }\n        else {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }\n        pvVar19 = xcmalloc(local_e0,1);\n        pcVar16 = (char *)0x0;\n        memset(pvVar19,0,local_e0);\n        if (eVar31 != 0) {\n          local_ec = (Filedata *)0x0;\n          do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);\n        }\n        free(pvVar19);\n      }" if (parenthesized_expression "(dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0)" ( (binary_expression "dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0" (binary_expression "dynamic_info[4]._4_4_ != 0" (field_expression "dynamic_info[4]._4_4_" (subscript_expression "dynamic_info[4]" identifier [ number_literal ]) . field_identifier) != number_literal) || (binary_expression "(uint)dynamic_info[4] != 0" (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ])) != number_literal)) )) (compound_statement "{\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar16);\n        }\n        else {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }\n        pvVar19 = xcmalloc(local_e0,1);\n        pcVar16 = (char *)0x0;\n        memset(pvVar19,0,local_e0);\n        if (eVar31 != 0) {\n          local_ec = (Filedata *)0x0;\n          do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);\n        }\n        free(pvVar19);\n      }" { (expression_statement "pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5);" (assignment_expression "pcVar16 = (char *)dcgettext(0,"\nSymbol table for image:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nSymbol table for image:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nSymbol table for image:\n",5)" identifier (argument_list "(0,"\nSymbol table for image:\n",5)" ( number_literal , (string_literal ""\nSymbol table for image:\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar16);" (call_expression "printf(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) (if_statement "if (is_32bit_elf == 0) {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar16);\n        }\n        else {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }" if (parenthesized_expression "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )) (compound_statement "{\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar16);\n        }" { (expression_statement "pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);" (assignment_expression "pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5)" identifier (argument_list "(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5)" ( number_literal , (string_literal ""  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar16);" (call_expression "printf(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) }) (else_clause "else {\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }" else (compound_statement "{\n          pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar16);\n        }" { (expression_statement "pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);" (assignment_expression "pcVar16 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5)" identifier (argument_list "(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5)" ( number_literal , (string_literal ""  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar16);" (call_expression "printf(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) }))) (expression_statement "pvVar19 = xcmalloc(local_e0,1);" (assignment_expression "pvVar19 = xcmalloc(local_e0,1)" identifier = (call_expression "xcmalloc(local_e0,1)" identifier (argument_list "(local_e0,1)" ( identifier , number_literal )))) ;) (expression_statement "pcVar16 = (char *)0x0;" (assignment_expression "pcVar16 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "memset(pvVar19,0,local_e0);" (call_expression "memset(pvVar19,0,local_e0)" identifier (argument_list "(pvVar19,0,local_e0)" ( identifier , number_literal , identifier ))) ;) (if_statement "if (eVar31 != 0) {\n          local_ec = (Filedata *)0x0;\n          do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);\n        }" if (parenthesized_expression "(eVar31 != 0)" ( (binary_expression "eVar31 != 0" identifier != number_literal) )) (compound_statement "{\n          local_ec = (Filedata *)0x0;\n          do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);\n        }" { (expression_statement "local_ec = (Filedata *)0x0;" (assignment_expression "local_ec = (Filedata *)0x0" identifier = (cast_expression "(Filedata *)0x0" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          } while ((Filedata *)local_7c != local_ec);" do (compound_statement "{\n            uVar15 = (uint)local_78[(int)local_ec];\n            uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);\n            if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }\n            local_ec = (Filedata *)((int)local_ec + 1);\n          }" { (expression_statement "uVar15 = (uint)local_78[(int)local_ec];" (assignment_expression "uVar15 = (uint)local_78[(int)local_ec]" identifier = (cast_expression "(uint)local_78[(int)local_ec]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_78[(int)local_ec]" identifier [ (cast_expression "(int)local_ec" ( (type_descriptor "int" primitive_type) ) identifier) ]))) ;) (expression_statement "uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4);" (assignment_expression "uVar24 = *(uint *)((int)local_78 + (int)local_ec * 8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_78 + (int)local_ec * 8 + 4)" * (cast_expression "(uint *)((int)local_78 + (int)local_ec * 8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_78 + (int)local_ec * 8 + 4)" ( (binary_expression "(int)local_78 + (int)local_ec * 8 + 4" (binary_expression "(int)local_78 + (int)local_ec * 8" (cast_expression "(int)local_78" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(int)local_ec * 8" (cast_expression "(int)local_ec" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) + number_literal) ))))) ;) (if_statement "if (uVar24 != 0 || uVar15 != 0) {\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }" if (parenthesized_expression "(uVar24 != 0 || uVar15 != 0)" ( (binary_expression "uVar24 != 0 || uVar15 != 0" (binary_expression "uVar24 != 0" identifier != number_literal) || (binary_expression "uVar15 != 0" identifier != number_literal)) )) (compound_statement "{\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);\n            }" { (do_statement "do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              } while (uVar24 != 0 || uVar15 != 0);" do (compound_statement "{\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);\n                if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }\n                *(char *)((int)pvVar19 + uVar15) = '\x01';\n                uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);\n                uVar15 = (uint)local_cc[uVar15];\n              }" { (expression_statement "print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15);" (call_expression "print_dynamic_symbol(filedata,CONCAT44(pcVar16,local_ec),uVar15)" identifier (argument_list "(filedata,CONCAT44(pcVar16,local_ec),uVar15)" ( identifier , (call_expression "CONCAT44(pcVar16,local_ec)" identifier (argument_list "(pcVar16,local_ec)" ( identifier , identifier ))) , identifier ))) ;) (if_statement "if ((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')) {\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }" if (parenthesized_expression "((local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0'))" ( (binary_expression "(local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc) ||\n                   (*(char *)((int)pvVar19 + uVar15) != '\0')" (parenthesized_expression "(local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc)" ( (binary_expression "local_dc <= uVar24 && (uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc" (binary_expression "local_dc <= uVar24" identifier <= identifier) && (binary_expression "(uint)(uVar15 < local_e0) <= uVar24 - (int)local_dc" (call_expression "(uint)(uVar15 < local_e0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar15 < local_e0)" ( (binary_expression "uVar15 < local_e0" identifier < identifier) ))) <= (binary_expression "uVar24 - (int)local_dc" identifier - (cast_expression "(int)local_dc" ( (type_descriptor "int" primitive_type) ) identifier)))) )) || (parenthesized_expression "(*(char *)((int)pvVar19 + uVar15) != '\0')" ( (binary_expression "*(char *)((int)pvVar19 + uVar15) != '\0'" (pointer_expression "*(char *)((int)pvVar19 + uVar15)" * (cast_expression "(char *)((int)pvVar19 + uVar15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar19 + uVar15)" ( (binary_expression "(int)pvVar19 + uVar15" (cast_expression "(int)pvVar19" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                  pcVar16 = "histogram chain is corrupt\n";\n                  pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                  error(pcVar22);\n                  break;\n                }" { (expression_statement "pcVar16 = "histogram chain is corrupt\n";" (assignment_expression "pcVar16 = "histogram chain is corrupt\n"" identifier = (string_literal ""histogram chain is corrupt\n"" " string_content escape_sequence ")) ;) (expression_statement "pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);" (assignment_expression "pcVar22 = (char *)dcgettext(0,"histogram chain is corrupt\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"histogram chain is corrupt\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"histogram chain is corrupt\n",5)" identifier (argument_list "(0,"histogram chain is corrupt\n",5)" ( number_literal , (string_literal ""histogram chain is corrupt\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "error(pcVar22);" (call_expression "error(pcVar22)" identifier (argument_list "(pcVar22)" ( identifier ))) ;) (break_statement "break;" break ;) })) (expression_statement "*(char *)((int)pvVar19 + uVar15) = '\x01';" (assignment_expression "*(char *)((int)pvVar19 + uVar15) = '\x01'" (pointer_expression "*(char *)((int)pvVar19 + uVar15)" * (cast_expression "(char *)((int)pvVar19 + uVar15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar19 + uVar15)" ( (binary_expression "(int)pvVar19 + uVar15" (cast_expression "(int)pvVar19" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4);" (assignment_expression "uVar24 = *(uint *)((int)local_cc + uVar15 * 8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_cc + uVar15 * 8 + 4)" * (cast_expression "(uint *)((int)local_cc + uVar15 * 8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_cc + uVar15 * 8 + 4)" ( (binary_expression "(int)local_cc + uVar15 * 8 + 4" (binary_expression "(int)local_cc + uVar15 * 8" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar15 * 8" identifier * number_literal)) + number_literal) ))))) ;) (expression_statement "uVar15 = (uint)local_cc[uVar15];" (assignment_expression "uVar15 = (uint)local_cc[uVar15]" identifier = (cast_expression "(uint)local_cc[uVar15]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_cc[uVar15]" identifier [ identifier ]))) ;) }) while (parenthesized_expression "(uVar24 != 0 || uVar15 != 0)" ( (binary_expression "uVar24 != 0 || uVar15 != 0" (binary_expression "uVar24 != 0" identifier != number_literal) || (binary_expression "uVar15 != 0" identifier != number_literal)) )) ;) })) (expression_statement "local_ec = (Filedata *)((int)local_ec + 1);" (assignment_expression "local_ec = (Filedata *)((int)local_ec + 1)" identifier = (cast_expression "(Filedata *)((int)local_ec + 1)" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_ec + 1)" ( (binary_expression "(int)local_ec + 1" (cast_expression "(int)local_ec" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "((Filedata *)local_7c != local_ec)" ( (binary_expression "(Filedata *)local_7c != local_ec" (cast_expression "(Filedata *)local_7c" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != identifier) )) ;) })) (expression_statement "free(pvVar19);" (call_expression "free(pvVar19)" identifier (argument_list "(pvVar19)" ( identifier ))) ;) })) (if_statement "if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0) {\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar22);\n        }\n        else {\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar15 = 0;\n          do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);\n        }\n      }" if (parenthesized_expression "(dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0)" ( (binary_expression "dynamic_info_DT_GNU_HASH._4_4_ != 0 || (uint)dynamic_info_DT_GNU_HASH != 0" (binary_expression "dynamic_info_DT_GNU_HASH._4_4_ != 0" (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier) != number_literal) || (binary_expression "(uint)dynamic_info_DT_GNU_HASH != 0" (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier) != number_literal)) )) (compound_statement "{\n        pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);\n        printf(pcVar16);\n        if (is_32bit_elf == 0) {\n          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar22);\n        }\n        else {\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar15 = 0;\n          do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);\n        }\n      }" { (expression_statement "pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);" (assignment_expression "pcVar16 = (char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nSymbol table of `.gnu.hash\' for image:\n",5)" identifier (argument_list "(0,"\nSymbol table of `.gnu.hash\' for image:\n",5)" ( number_literal , (string_literal ""\nSymbol table of `.gnu.hash\' for image:\n"" " escape_sequence string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar16);" (call_expression "printf(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) (if_statement "if (is_32bit_elf == 0) {\n          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar22);\n        }\n        else {\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }" if (parenthesized_expression "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )) (compound_statement "{\n          pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);\n          printf(pcVar22);\n        }" { (expression_statement "pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";" (assignment_expression "pcVar16 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"" identifier = (string_literal ""  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"" " string_content escape_sequence ")) ;) (expression_statement "pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5);" (assignment_expression "pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5)" identifier (argument_list "(0,\n                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"\n                                      ,5)" ( number_literal , (string_literal ""  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar22);" (call_expression "printf(pcVar22)" identifier (argument_list "(pcVar22)" ( identifier ))) ;) }) (else_clause "else {\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }" else (compound_statement "{\n          pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";\n          pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);\n          printf(pcVar22);\n        }" { (expression_statement "pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";" (assignment_expression "pcVar16 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n"" identifier = (string_literal ""  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n"" " string_content escape_sequence ")) ;) (expression_statement "pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5);" (assignment_expression "pcVar22 = (char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5)" identifier (argument_list "(0,\n                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",\n                                      5)" ( number_literal , (string_literal ""  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar22);" (call_expression "printf(pcVar22)" identifier (argument_list "(pcVar22)" ( identifier ))) ;) }))) (if_statement "if (local_50 != 0 || local_54 != 0) {\n          uVar15 = 0;\n          do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);\n        }" if (parenthesized_expression "(local_50 != 0 || local_54 != 0)" ( (binary_expression "local_50 != 0 || local_54 != 0" (binary_expression "local_50 != 0" identifier != number_literal) || (binary_expression "local_54 != 0" identifier != number_literal)) )) (compound_statement "{\n          uVar15 = 0;\n          do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);\n        }" { (expression_statement "uVar15 = 0;" (assignment_expression "uVar15 = 0" identifier = number_literal) ;) (do_statement "do {\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          } while (local_54 != uVar15);" do (compound_statement "{\n            iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);\n            uVar24 = (uint)local_6c[uVar15];\n            if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }\n            uVar15 = uVar15 + 1;\n          }" { (expression_statement "iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4);" (assignment_expression "iVar12 = *(int *)((int)local_6c + uVar15 * 8 + 4)" identifier = (pointer_expression "*(int *)((int)local_6c + uVar15 * 8 + 4)" * (cast_expression "(int *)((int)local_6c + uVar15 * 8 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_6c + uVar15 * 8 + 4)" ( (binary_expression "(int)local_6c + uVar15 * 8 + 4" (binary_expression "(int)local_6c + uVar15 * 8" (cast_expression "(int)local_6c" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar15 * 8" identifier * number_literal)) + number_literal) ))))) ;) (expression_statement "uVar24 = (uint)local_6c[uVar15];" (assignment_expression "uVar24 = (uint)local_6c[uVar15]" identifier = (cast_expression "(uint)local_6c[uVar15]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_6c[uVar15]" identifier [ identifier ]))) ;) (if_statement "if (iVar12 != 0 || uVar24 != 0) {\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }" if (parenthesized_expression "(iVar12 != 0 || uVar24 != 0)" ( (binary_expression "iVar12 != 0 || uVar24 != 0" (binary_expression "iVar12 != 0" identifier != number_literal) || (binary_expression "uVar24 != 0" identifier != number_literal)) )) (compound_statement "{\n              uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n              uVar24 = uVar24 - (uint)local_8c;\n              do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);\n            }" { (expression_statement "uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);" (assignment_expression "uVar26 = (iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c)" identifier = (binary_expression "(iVar12 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c)" (parenthesized_expression "(iVar12 - local_8c._4_4_)" ( (binary_expression "iVar12 - local_8c._4_4_" identifier - (field_expression "local_8c._4_4_" identifier . field_identifier)) )) - (call_expression "(uint)(uVar24 < (uint)local_8c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar24 < (uint)local_8c)" ( (binary_expression "uVar24 < (uint)local_8c" identifier < (cast_expression "(uint)local_8c" ( (type_descriptor "uint" type_identifier) ) identifier)) ))))) ;) (expression_statement "uVar24 = uVar24 - (uint)local_8c;" (assignment_expression "uVar24 = uVar24 - (uint)local_8c" identifier = (binary_expression "uVar24 - (uint)local_8c" identifier - (cast_expression "(uint)local_8c" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (do_statement "do {\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              } while ((*pbVar1 & 1) == 0);" do (compound_statement "{\n                print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);\n                if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;\n                uVar26 = uVar26 + (0xfffffffe < uVar24);\n                pbVar1 = local_90 + uVar24;\n                uVar24 = uVar24 + 1;\n              }" { (expression_statement "print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24);" (call_expression "print_dynamic_symbol(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24)" identifier (argument_list "(filedata,CONCAT44(pcVar16,uVar15),(uint)local_8c + uVar24)" ( identifier , (call_expression "CONCAT44(pcVar16,uVar15)" identifier (argument_list "(pcVar16,uVar15)" ( identifier , identifier ))) , (binary_expression "(uint)local_8c + uVar24" (cast_expression "(uint)local_8c" ( (type_descriptor "uint" type_identifier) ) identifier) + identifier) ))) ;) (if_statement "if (local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_) break;" if (parenthesized_expression "(local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_)" ( (binary_expression "local_74._4_4_ <= uVar26 &&\n                    (uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_" (binary_expression "local_74._4_4_ <= uVar26" (field_expression "local_74._4_4_" identifier . field_identifier) <= identifier) && (binary_expression "(uint)(uVar24 < (uint)local_74) <= uVar26 - local_74._4_4_" (call_expression "(uint)(uVar24 < (uint)local_74)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar24 < (uint)local_74)" ( (binary_expression "uVar24 < (uint)local_74" identifier < (cast_expression "(uint)local_74" ( (type_descriptor "uint" type_identifier) ) identifier)) ))) <= (binary_expression "uVar26 - local_74._4_4_" identifier - (field_expression "local_74._4_4_" identifier . field_identifier)))) )) (break_statement "break;" break ;)) (expression_statement "uVar26 = uVar26 + (0xfffffffe < uVar24);" (assignment_expression "uVar26 = uVar26 + (0xfffffffe < uVar24)" identifier = (binary_expression "uVar26 + (0xfffffffe < uVar24)" identifier + (parenthesized_expression "(0xfffffffe < uVar24)" ( (binary_expression "0xfffffffe < uVar24" number_literal < identifier) )))) ;) (expression_statement "pbVar1 = local_90 + uVar24;" (assignment_expression "pbVar1 = local_90 + uVar24" identifier = (binary_expression "local_90 + uVar24" identifier + identifier)) ;) (expression_statement "uVar24 = uVar24 + 1;" (assignment_expression "uVar24 = uVar24 + 1" identifier = (binary_expression "uVar24 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((*pbVar1 & 1) == 0)" ( (binary_expression "(*pbVar1 & 1) == 0" (parenthesized_expression "(*pbVar1 & 1)" ( (binary_expression "*pbVar1 & 1" (pointer_expression "*pbVar1" * identifier) & number_literal) )) == number_literal) )) ;) })) (expression_statement "uVar15 = uVar15 + 1;" (assignment_expression "uVar15 = uVar15 + 1" identifier = (binary_expression "uVar15 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_54 != uVar15)" ( (binary_expression "local_54 != uVar15" identifier != identifier) )) ;) })) })) (goto_statement "goto LAB_00033418;" goto statement_identifier ;) })) (if_statement "if (do_dyn_syms == 0) goto LAB_000341b6;" if (parenthesized_expression "(do_dyn_syms == 0)" ( (binary_expression "do_dyn_syms == 0" identifier == number_literal) )) (goto_statement "goto LAB_000341b6;" goto statement_identifier ;)) (labeled_statement "LAB_00033a30:\n    local_ec = (Filedata *)filedata->section_headers;" statement_identifier : (expression_statement "local_ec = (Filedata *)filedata->section_headers;" (assignment_expression "local_ec = (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 (local_ec != (Filedata *)0x0) {\nLAB_00033a43:\n      puVar10 = PTR_stdout_000b3fd8;\n      if ((filedata->file_header).e_shnum != 0) {\n        filedata_01 = &filedata->string_table;\n        local_b0 = 0;\n        do {\n          pFVar5 = local_ec->handle;\n          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;\n        } while (local_b0 < (filedata->file_header).e_shnum);\n      }\n      goto LAB_00033418;\n    }" if (parenthesized_expression "(local_ec != (Filedata *)0x0)" ( (binary_expression "local_ec != (Filedata *)0x0" identifier != (cast_expression "(Filedata *)0x0" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00033a43:\n      puVar10 = PTR_stdout_000b3fd8;\n      if ((filedata->file_header).e_shnum != 0) {\n        filedata_01 = &filedata->string_table;\n        local_b0 = 0;\n        do {\n          pFVar5 = local_ec->handle;\n          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;\n        } while (local_b0 < (filedata->file_header).e_shnum);\n      }\n      goto LAB_00033418;\n    }" { (labeled_statement "LAB_00033a43:\n      puVar10 = PTR_stdout_000b3fd8;" statement_identifier : (expression_statement "puVar10 = PTR_stdout_000b3fd8;" (assignment_expression "puVar10 = PTR_stdout_000b3fd8" identifier = identifier) ;)) (if_statement "if ((filedata->file_header).e_shnum != 0) {\n        filedata_01 = &filedata->string_table;\n        local_b0 = 0;\n        do {\n          pFVar5 = local_ec->handle;\n          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;\n        } while (local_b0 < (filedata->file_header).e_shnum);\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        filedata_01 = &filedata->string_table;\n        local_b0 = 0;\n        do {\n          pFVar5 = local_ec->handle;\n          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;\n        } while (local_b0 < (filedata->file_header).e_shnum);\n      }" { (expression_statement "filedata_01 = &filedata->string_table;" (assignment_expression "filedata_01 = &filedata->string_table" identifier = (pointer_expression "&filedata->string_table" & (field_expression "filedata->string_table" identifier -> field_identifier))) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (do_statement "do {\n          pFVar5 = local_ec->handle;\n          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;\n        } while (local_b0 < (filedata->file_header).e_shnum);" do (compound_statement "{\n          pFVar5 = local_ec->handle;\n          if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;\n        }" { (expression_statement "pFVar5 = local_ec->handle;" (assignment_expression "pFVar5 = local_ec->handle" identifier = (field_expression "local_ec->handle" identifier -> field_identifier)) ;) (if_statement "if (((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))) {\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }" if (parenthesized_expression "(((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2))))" ( (binary_expression "((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)) &&\n             ((do_syms != 0 || (pFVar5 != (FILE *)0x2)))" (parenthesized_expression "((pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb))" ( (binary_expression "(pFVar5 == (FILE *)0x2) || (pFVar5 == (FILE *)0xb)" (parenthesized_expression "(pFVar5 == (FILE *)0x2)" ( (binary_expression "pFVar5 == (FILE *)0x2" identifier == (cast_expression "(FILE *)0x2" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(pFVar5 == (FILE *)0xb)" ( (binary_expression "pFVar5 == (FILE *)0xb" identifier == (cast_expression "(FILE *)0xb" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) && (parenthesized_expression "((do_syms != 0 || (pFVar5 != (FILE *)0x2)))" ( (parenthesized_expression "(do_syms != 0 || (pFVar5 != (FILE *)0x2))" ( (binary_expression "do_syms != 0 || (pFVar5 != (FILE *)0x2)" (binary_expression "do_syms != 0" identifier != number_literal) || (parenthesized_expression "(pFVar5 != (FILE *)0x2)" ( (binary_expression "pFVar5 != (FILE *)0x2" identifier != (cast_expression "(FILE *)0x2" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) ))) )) (compound_statement "{\n            uVar6 = (local_ec->file_header).e_flags;\n            uVar7 = (local_ec->file_header).e_version;\n            sec = &filedata->string_table_length;\n            if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }" { (expression_statement "uVar6 = (local_ec->file_header).e_flags;" (assignment_expression "uVar6 = (local_ec->file_header).e_flags" identifier = (field_expression "(local_ec->file_header).e_flags" (parenthesized_expression "(local_ec->file_header)" ( (field_expression "local_ec->file_header" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "uVar7 = (local_ec->file_header).e_version;" (assignment_expression "uVar7 = (local_ec->file_header).e_version" identifier = (field_expression "(local_ec->file_header).e_version" (parenthesized_expression "(local_ec->file_header)" ( (field_expression "local_ec->file_header" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "sec = &filedata->string_table_length;" (assignment_expression "sec = &filedata->string_table_length" identifier = (pointer_expression "&filedata->string_table_length" & (field_expression "filedata->string_table_length" identifier -> field_identifier))) ;) (if_statement "if (uVar6 == 0 && uVar7 == 0) {\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }\n            else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" if (parenthesized_expression "(uVar6 == 0 && uVar7 == 0)" ( (binary_expression "uVar6 == 0 && uVar7 == 0" (binary_expression "uVar6 == 0" identifier == number_literal) && (binary_expression "uVar7 == 0" identifier == number_literal)) )) (compound_statement "{\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);\n              printf(pcVar22,pcVar16);\n            }" { (expression_statement "pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);" (assignment_expression "pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec)" identifier = (call_expression "printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec)" identifier (argument_list "((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec)" ( (cast_expression "(Filedata *)filedata_01" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(Elf_Internal_Shdr *)sec" ( (type_descriptor "Elf_Internal_Shdr *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);" (assignment_expression "pcVar22 = (char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5)" identifier (argument_list "(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5)" ( number_literal , (string_literal ""\nSymbol table \'%s\' has a sh_entsize of zero!\n"" " escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar22,pcVar16);" (call_expression "printf(pcVar22,pcVar16)" identifier (argument_list "(pcVar22,pcVar16)" ( identifier , identifier ))) ;) }) (else_clause "else {\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" else (compound_statement "{\n              uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);\n              nb._0_4_ = uVar33;\n              pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);\n              pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);\n              printf(pcVar22,pcVar16,uVar33);\n              if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" { (expression_statement "uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6);" (assignment_expression "uVar33 = __udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6)" identifier = (call_expression "__udivdi3((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6)" identifier (argument_list "((int)(local_ec->file_header).e_entry,\n                                 *(undefined4 *)((int)&(local_ec->file_header).e_entry + 4),uVar7,\n                                 uVar6)" ( (cast_expression "(int)(local_ec->file_header).e_entry" ( (type_descriptor "int" primitive_type) ) (field_expression "(local_ec->file_header).e_entry" (parenthesized_expression "(local_ec->file_header)" ( (field_expression "local_ec->file_header" identifier -> field_identifier) )) . field_identifier)) , (pointer_expression "*(undefined4 *)((int)&(local_ec->file_header).e_entry + 4)" * (cast_expression "(undefined4 *)((int)&(local_ec->file_header).e_entry + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(local_ec->file_header).e_entry + 4)" ( (binary_expression "(int)&(local_ec->file_header).e_entry + 4" (cast_expression "(int)&(local_ec->file_header).e_entry" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(local_ec->file_header).e_entry" & (field_expression "(local_ec->file_header).e_entry" (parenthesized_expression "(local_ec->file_header)" ( (field_expression "local_ec->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) , identifier , identifier )))) ;) (expression_statement "nb._0_4_ = uVar33;" (assignment_expression "nb._0_4_ = uVar33" (field_expression "nb._0_4_" identifier . field_identifier) = identifier) ;) (expression_statement "pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec);" (assignment_expression "pcVar16 = printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec)" identifier = (call_expression "printable_section_name\n                                  ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec)" identifier (argument_list "((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec)" ( (cast_expression "(Filedata *)filedata_01" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(Elf_Internal_Shdr *)sec" ( (type_descriptor "Elf_Internal_Shdr *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5);" (assignment_expression "pcVar22 = (char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5)" identifier = (cast_expression "(char *)dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5)" identifier (argument_list "(0,"\nSymbol table \'%s\' contains %lu entry:\n",\n                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,\n                                           5)" ( number_literal , (string_literal ""\nSymbol table \'%s\' contains %lu entry:\n"" " escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , (string_literal ""\nSymbol table \'%s\' contains %lu entries:\n"" " escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , (field_expression "nb._0_4_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "printf(pcVar22,pcVar16,uVar33);" (call_expression "printf(pcVar22,pcVar16,uVar33)" identifier (argument_list "(pcVar22,pcVar16,uVar33)" ( identifier , identifier , identifier ))) ;) (if_statement "if (is_32bit_elf == 0) {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }\n              else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }" if (parenthesized_expression "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )) (compound_statement "{\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }" { (expression_statement "sym_info = (versioned_symbol_info *)0x5;" (assignment_expression "sym_info = (versioned_symbol_info *)0x5" identifier = (cast_expression "(versioned_symbol_info *)0x5" ( (type_descriptor "versioned_symbol_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           );" (assignment_expression "pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           )" identifier = (cast_expression "(char *)dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           )" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           )" identifier (argument_list "(0,\n                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"\n                                           )" ( number_literal , (string_literal ""   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar16);" (call_expression "printf(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) }) (else_clause "else {\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }" else (compound_statement "{\n                sym_info = (versioned_symbol_info *)0x5;\n                pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );\n                printf(pcVar16);\n              }" { (expression_statement "sym_info = (versioned_symbol_info *)0x5;" (assignment_expression "sym_info = (versioned_symbol_info *)0x5" identifier = (cast_expression "(versioned_symbol_info *)0x5" ( (type_descriptor "versioned_symbol_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           );" (assignment_expression "pcVar16 = (char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           )" identifier = (cast_expression "(char *)dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           )" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           )" identifier (argument_list "(0,\n                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"\n                                           )" ( number_literal , (string_literal ""   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar16);" (call_expression "printf(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) }))) (if_statement "if (is_32bit_elf == 0) {\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }\n              else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }" if (parenthesized_expression "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )) (compound_statement "{\n                local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }" { (expression_statement "local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;" (assignment_expression "local_80 = get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)" identifier = (call_expression "get_64bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)" identifier (argument_list "(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)" ( identifier , (cast_expression "(Elf_Internal_Shdr *)local_ec" ( (type_descriptor "Elf_Internal_Shdr *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(ulong *)nb" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) }) (else_clause "else {\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }" else (compound_statement "{\n                local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;\n              }" { (expression_statement "local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)\n                ;" (assignment_expression "local_80 = get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)" identifier = (call_expression "get_32bit_elf_symbols(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)" identifier (argument_list "(filedata,(Elf_Internal_Shdr *)local_ec,(ulong *)nb)" ( identifier , (cast_expression "(Elf_Internal_Shdr *)local_ec" ( (type_descriptor "Elf_Internal_Shdr *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(ulong *)nb" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) }))) (if_statement "if (local_80 != (Elf_Internal_Sym *)0x0) {\n                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }" if (parenthesized_expression "(local_80 != (Elf_Internal_Sym *)0x0)" ( (binary_expression "local_80 != (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                uVar15 = (uint)(local_ec->file_header).e_phoff;\n                if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }\n                if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }\n                free(local_80);\n                if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }\n              }" { (expression_statement "uVar15 = (uint)(local_ec->file_header).e_phoff;" (assignment_expression "uVar15 = (uint)(local_ec->file_header).e_phoff" identifier = (field_expression "(uint)(local_ec->file_header).e_phoff" (call_expression "(uint)(local_ec->file_header)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_ec->file_header)" ( (field_expression "local_ec->file_header" identifier -> field_identifier) ))) . field_identifier)) ;) (if_statement "if (uVar15 == (filedata->file_header).e_shstrndx) {\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }\n                else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }" if (parenthesized_expression "(uVar15 == (filedata->file_header).e_shstrndx)" ( (binary_expression "uVar15 == (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)) )) (compound_statement "{\n                  local_bc = filedata->string_table;\n                  local_d4 = (Filedata *)filedata->string_table_length;\n                }" { (expression_statement "local_bc = filedata->string_table;" (assignment_expression "local_bc = filedata->string_table" identifier = (field_expression "filedata->string_table" identifier -> field_identifier)) ;) (expression_statement "local_d4 = (Filedata *)filedata->string_table_length;" (assignment_expression "local_d4 = (Filedata *)filedata->string_table_length" identifier = (cast_expression "(Filedata *)filedata->string_table_length" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->string_table_length" identifier -> field_identifier))) ;) }) (else_clause "else {\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }" else (compound_statement "{\n                  local_d4 = (Filedata *)0x0;\n                  local_bc = (char *)0x0;\n                  if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }\n                }" { (expression_statement "local_d4 = (Filedata *)0x0;" (assignment_expression "local_d4 = (Filedata *)0x0" identifier = (cast_expression "(Filedata *)0x0" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_bc = (char *)0x0;" (assignment_expression "local_bc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (uVar15 < (filedata->file_header).e_shnum) {\n                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }" if (parenthesized_expression "(uVar15 < (filedata->file_header).e_shnum)" ( (binary_expression "uVar15 < (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                    pEVar8 = filedata->section_headers;\n                    sym_info = (versioned_symbol_info *)0x5;\n                    pcVar16 = (char *)dcgettext(0,"string table");\n                    local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);\n                    if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }\n                  }" { (expression_statement "pEVar8 = filedata->section_headers;" (assignment_expression "pEVar8 = filedata->section_headers" identifier = (field_expression "filedata->section_headers" identifier -> field_identifier)) ;) (expression_statement "sym_info = (versioned_symbol_info *)0x5;" (assignment_expression "sym_info = (versioned_symbol_info *)0x5" identifier = (cast_expression "(versioned_symbol_info *)0x5" ( (type_descriptor "versioned_symbol_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar16 = (char *)dcgettext(0,"string table");" (assignment_expression "pcVar16 = (char *)dcgettext(0,"string table")" identifier = (cast_expression "(char *)dcgettext(0,"string table")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"string table")" identifier (argument_list "(0,"string table")" ( number_literal , (string_literal ""string table"" " string_content ") ))))) ;) (expression_statement "local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16);" (assignment_expression "local_bc = (char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16)" identifier = (cast_expression "(char *)get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "get_data((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16)" identifier (argument_list "((void *)0x0,filedata,(ulong)pEVar8[uVar15].sh_offset\n                                                ,1,pEVar8[uVar15].sh_size,pcVar16)" ( (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , identifier , (cast_expression "(ulong)pEVar8[uVar15].sh_offset" ( (type_descriptor "ulong" type_identifier) ) (field_expression "pEVar8[uVar15].sh_offset" (subscript_expression "pEVar8[uVar15]" identifier [ identifier ]) . field_identifier)) , number_literal , (field_expression "pEVar8[uVar15].sh_size" (subscript_expression "pEVar8[uVar15]" identifier [ identifier ]) . field_identifier) , identifier ))))) ;) (if_statement "if (local_bc != (char *)0x0) {\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }" if (parenthesized_expression "(local_bc != (char *)0x0)" ( (binary_expression "local_bc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;\n                    }" { (expression_statement "local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size;" (assignment_expression "local_d4 = *(Filedata **)&pEVar8[uVar15].sh_size" identifier = (pointer_expression "*(Filedata **)&pEVar8[uVar15].sh_size" * (cast_expression "(Filedata **)&pEVar8[uVar15].sh_size" ( (type_descriptor "Filedata **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pEVar8[uVar15].sh_size" & (field_expression "pEVar8[uVar15].sh_size" (subscript_expression "pEVar8[uVar15]" identifier [ identifier ]) . field_identifier))))) ;) })) })) }))) (if_statement "if (nb._0_4_ != 0) {\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }" if (parenthesized_expression "(nb._0_4_ != 0)" ( (binary_expression "nb._0_4_ != 0" (field_expression "nb._0_4_" identifier . field_identifier) != number_literal) )) (compound_statement "{\n                  filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);\n                  uVar15 = 0;\n                  strtab = &local_80->st_name;\n                  do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);\n                }" { (expression_statement "filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7);" (assignment_expression "filedata_00 = (Filedata *)((filedata->file_header).e_ident + 7)" identifier = (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) )))) ;) (expression_statement "uVar15 = 0;" (assignment_expression "uVar15 = 0" identifier = number_literal) ;) (expression_statement "strtab = &local_80->st_name;" (assignment_expression "strtab = &local_80->st_name" identifier = (pointer_expression "&local_80->st_name" & (field_expression "local_80->st_name" identifier -> field_identifier))) ;) (do_statement "do {\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  } while (uVar15 < (uint)nb._0_4_);" do (compound_statement "{\n                    pcVar16 = "%6d: ";\n                    uVar24 = uVar15;\n                    printf("%6d: ");\n                    print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);\n                    pFVar32 = *(FILE **)puVar10;\n                    uVar33 = 0x20;\n                    putc(0x20,pFVar32);\n                    print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));\n                    pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));\n                    printf(" %-7s",pcVar16);\n                    pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));\n                    printf(" %-6s",pcVar16);\n                    if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }\n                    pcVar16 = get_symbol_index_type(filedata,strtab[2]);\n                    printf(" %4s ",pcVar16);\n                    if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }\n                    vna_other_00 = (ushort *)0x33cb9;\n                    print_symbol(0x19,pcVar16);\n                    pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);\n                    if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }\n                    putc(10,*(FILE **)puVar10);\n                    if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }\n                    uVar15 = uVar15 + 1;\n                    strtab = strtab + 7;\n                  }" { (expression_statement "pcVar16 = "%6d: ";" (assignment_expression "pcVar16 = "%6d: "" identifier = (string_literal ""%6d: "" " string_content ")) ;) (expression_statement "uVar24 = uVar15;" (assignment_expression "uVar24 = uVar15" identifier = identifier) ;) (expression_statement "printf("%6d: ");" (call_expression "printf("%6d: ")" identifier (argument_list "("%6d: ")" ( (string_literal ""%6d: "" " string_content ") ))) ;) (expression_statement "print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value);" (call_expression "print_vma(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value)" identifier (argument_list "(CONCAT44(uVar24,pcVar16),\n                              (print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value)" ( (call_expression "CONCAT44(uVar24,pcVar16)" identifier (argument_list "(uVar24,pcVar16)" ( identifier , identifier ))) , (field_expression "(print_mode)((Elf_Internal_Sym *)(strtab + -4))->st_value" (call_expression "(print_mode)((Elf_Internal_Sym *)(strtab + -4))" (parenthesized_expression "(print_mode)" ( identifier )) (argument_list "((Elf_Internal_Sym *)(strtab + -4))" ( (cast_expression "(Elf_Internal_Sym *)(strtab + -4)" ( (type_descriptor "Elf_Internal_Sym *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(strtab + -4)" ( (binary_expression "strtab + -4" identifier + number_literal) ))) ))) -> field_identifier) ))) ;) (expression_statement "pFVar32 = *(FILE **)puVar10;" (assignment_expression "pFVar32 = *(FILE **)puVar10" identifier = (pointer_expression "*(FILE **)puVar10" * (cast_expression "(FILE **)puVar10" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "uVar33 = 0x20;" (assignment_expression "uVar33 = 0x20" identifier = number_literal) ;) (expression_statement "putc(0x20,pFVar32);" (call_expression "putc(0x20,pFVar32)" identifier (argument_list "(0x20,pFVar32)" ( number_literal , identifier ))) ;) (expression_statement "print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2));" (call_expression "print_vma(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2))" identifier (argument_list "(CONCAT44(pFVar32,uVar33),(print_mode)*(bfd_vma *)(strtab + -2))" ( (call_expression "CONCAT44(pFVar32,uVar33)" identifier (argument_list "(pFVar32,uVar33)" ( identifier , identifier ))) , (binary_expression "(print_mode)*(bfd_vma *)(strtab + -2)" (parenthesized_expression "(print_mode)" ( identifier )) * (cast_expression "(bfd_vma *)(strtab + -2)" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(strtab + -2)" ( (binary_expression "strtab + -2" identifier + number_literal) )))) ))) ;) (expression_statement "pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf));" (assignment_expression "pcVar16 = get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf))" identifier = (call_expression "get_symbol_type(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf))" identifier (argument_list "(filedata_00,(uint)&(filedata->file_header).e_machine,\n                                              (Filedata *)(*(byte *)(strtab + 1) & 0xf))" ( identifier , (binary_expression "(uint)&(filedata->file_header).e_machine" (parenthesized_expression "(uint)" ( 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 *)(*(byte *)(strtab + 1) & 0xf)" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(byte *)(strtab + 1) & 0xf)" ( (binary_expression "*(byte *)(strtab + 1) & 0xf" (pointer_expression "*(byte *)(strtab + 1)" * (cast_expression "(byte *)(strtab + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(strtab + 1)" ( (binary_expression "strtab + 1" identifier + number_literal) )))) & number_literal) ))) )))) ;) (expression_statement "printf(" %-7s",pcVar16);" (call_expression "printf(" %-7s",pcVar16)" identifier (argument_list "(" %-7s",pcVar16)" ( (string_literal "" %-7s"" " string_content ") , identifier ))) ;) (expression_statement "pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4));" (assignment_expression "pcVar16 = get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4))" identifier = (call_expression "get_symbol_binding(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4))" identifier (argument_list "(filedata_00,(uint)(*(byte *)(strtab + 1) >> 4))" ( identifier , (call_expression "(uint)(*(byte *)(strtab + 1) >> 4)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(byte *)(strtab + 1) >> 4)" ( (binary_expression "*(byte *)(strtab + 1) >> 4" (pointer_expression "*(byte *)(strtab + 1)" * (cast_expression "(byte *)(strtab + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(strtab + 1)" ( (binary_expression "strtab + 1" identifier + number_literal) )))) >> number_literal) ))) )))) ;) (expression_statement "printf(" %-6s",pcVar16);" (call_expression "printf(" %-6s",pcVar16)" identifier (argument_list "(" %-6s",pcVar16)" ( (string_literal "" %-6s"" " string_content ") , identifier ))) ;) (if_statement "if ((filedata->file_header).e_ident[7] == '\x06') {\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }\n                    else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }" if (parenthesized_expression "((filedata->file_header).e_ident[7] == '\x06')" ( (binary_expression "(filedata->file_header).e_ident[7] == '\x06'" (subscript_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 ]) == (char_literal "'\x06'" ' escape_sequence ')) )) (compound_statement "{\n                      pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));\n                      printf(" %-7s",pcVar16);\n                    }" { (expression_statement "pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5));" (assignment_expression "pcVar16 = get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5))" identifier = (call_expression "get_solaris_symbol_visibility((uint)*(uchar *)((int)strtab + 5))" identifier (argument_list "((uint)*(uchar *)((int)strtab + 5))" ( (binary_expression "(uint)*(uchar *)((int)strtab + 5)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(uchar *)((int)strtab + 5)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)strtab + 5)" ( (binary_expression "(int)strtab + 5" (cast_expression "(int)strtab" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) )))) ;) (expression_statement "printf(" %-7s",pcVar16);" (call_expression "printf(" %-7s",pcVar16)" identifier (argument_list "(" %-7s",pcVar16)" ( (string_literal "" %-7s"" " string_content ") , identifier ))) ;) }) (else_clause "else {\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }" else (compound_statement "{\n                      bVar9 = *(uchar *)((int)strtab + 5) & 3;\n                      pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));\n                      printf(" %-7s",pcVar16);\n                      if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }\n                    }" { (expression_statement "bVar9 = *(uchar *)((int)strtab + 5) & 3;" (assignment_expression "bVar9 = *(uchar *)((int)strtab + 5) & 3" identifier = (binary_expression "*(uchar *)((int)strtab + 5) & 3" (pointer_expression "*(uchar *)((int)strtab + 5)" * (cast_expression "(uchar *)((int)strtab + 5)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)strtab + 5)" ( (binary_expression "(int)strtab + 5" (cast_expression "(int)strtab" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) & number_literal)) ;) (expression_statement "pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3));" (assignment_expression "pcVar16 = get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3))" identifier = (call_expression "get_symbol_visibility((uint)(*(uchar *)((int)strtab + 5) & 3))" identifier (argument_list "((uint)(*(uchar *)((int)strtab + 5) & 3))" ( (call_expression "(uint)(*(uchar *)((int)strtab + 5) & 3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(uchar *)((int)strtab + 5) & 3)" ( (binary_expression "*(uchar *)((int)strtab + 5) & 3" (pointer_expression "*(uchar *)((int)strtab + 5)" * (cast_expression "(uchar *)((int)strtab + 5)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)strtab + 5)" ( (binary_expression "(int)strtab + 5" (cast_expression "(int)strtab" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) & number_literal) ))) )))) ;) (expression_statement "printf(" %-7s",pcVar16);" (call_expression "printf(" %-7s",pcVar16)" identifier (argument_list "(" %-7s",pcVar16)" ( (string_literal "" %-7s"" " string_content ") , identifier ))) ;) (if_statement "if (*(uchar *)((int)strtab + 5) != bVar9) {\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }" if (parenthesized_expression "(*(uchar *)((int)strtab + 5) != bVar9)" ( (binary_expression "*(uchar *)((int)strtab + 5) != bVar9" (pointer_expression "*(uchar *)((int)strtab + 5)" * (cast_expression "(uchar *)((int)strtab + 5)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)strtab + 5)" ( (binary_expression "(int)strtab + 5" (cast_expression "(int)strtab" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != identifier) )) (compound_statement "{\n                        pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));\n                        printf(" [%s] ",pcVar16);\n                      }" { (expression_statement "pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9));" (assignment_expression "pcVar16 = get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9))" identifier = (call_expression "get_symbol_other(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9))" identifier (argument_list "(filedata,(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9))" ( identifier , (call_expression "(uint)(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9)" ( (binary_expression "*(uchar *)((int)strtab + 5) ^\n                                                                  bVar9" (pointer_expression "*(uchar *)((int)strtab + 5)" * (cast_expression "(uchar *)((int)strtab + 5)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)strtab + 5)" ( (binary_expression "(int)strtab + 5" (cast_expression "(int)strtab" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ^ identifier) ))) )))) ;) (expression_statement "printf(" [%s] ",pcVar16);" (call_expression "printf(" [%s] ",pcVar16)" identifier (argument_list "(" [%s] ",pcVar16)" ( (string_literal "" [%s] "" " string_content ") , identifier ))) ;) })) }))) (expression_statement "pcVar16 = get_symbol_index_type(filedata,strtab[2]);" (assignment_expression "pcVar16 = get_symbol_index_type(filedata,strtab[2])" identifier = (call_expression "get_symbol_index_type(filedata,strtab[2])" identifier (argument_list "(filedata,strtab[2])" ( identifier , (subscript_expression "strtab[2]" identifier [ number_literal ]) )))) ;) (expression_statement "printf(" %4s ",pcVar16);" (call_expression "printf(" %4s ",pcVar16)" identifier (argument_list "(" %4s ",pcVar16)" ( (string_literal "" %4s "" " string_content ") , identifier ))) ;) (if_statement "if ((Filedata *)*strtab < local_d4) {\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }\n                    else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }" if (parenthesized_expression "((Filedata *)*strtab < local_d4)" ( (binary_expression "(Filedata *)*strtab < local_d4" (cast_expression "(Filedata *)*strtab" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*strtab" * identifier)) < identifier) )) (compound_statement "{\n                      pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;\n                    }" { (expression_statement "pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c;" (assignment_expression "pcVar16 = local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c" identifier = (binary_expression "local_bc + (int)(&((Filedata *)*strtab)->file_header + -1) + 0x3c" (binary_expression "local_bc + (int)(&((Filedata *)*strtab)->file_header + -1)" identifier + (cast_expression "(int)(&((Filedata *)*strtab)->file_header + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(&((Filedata *)*strtab)->file_header + -1)" ( (binary_expression "&((Filedata *)*strtab)->file_header + -1" (pointer_expression "&((Filedata *)*strtab)->file_header" & (field_expression "((Filedata *)*strtab)->file_header" (parenthesized_expression "((Filedata *)*strtab)" ( (cast_expression "(Filedata *)*strtab" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*strtab" * identifier)) )) -> field_identifier)) + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }" else (compound_statement "{\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar16 = (char *)dcgettext(0,"<corrupt>");\n                    }" { (expression_statement "sym_info = (versioned_symbol_info *)0x5;" (assignment_expression "sym_info = (versioned_symbol_info *)0x5" identifier = (cast_expression "(versioned_symbol_info *)0x5" ( (type_descriptor "versioned_symbol_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar16 = (char *)dcgettext(0,"<corrupt>");" (assignment_expression "pcVar16 = (char *)dcgettext(0,"<corrupt>")" identifier = (cast_expression "(char *)dcgettext(0,"<corrupt>")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<corrupt>")" identifier (argument_list "(0,"<corrupt>")" ( number_literal , (string_literal ""<corrupt>"" " string_content ") ))))) ;) }))) (expression_statement "vna_other_00 = (ushort *)0x33cb9;" (assignment_expression "vna_other_00 = (ushort *)0x33cb9" identifier = (cast_expression "(ushort *)0x33cb9" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "print_symbol(0x19,pcVar16);" (call_expression "print_symbol(0x19,pcVar16)" identifier (argument_list "(0x19,pcVar16)" ( number_literal , identifier ))) ;) (expression_statement "pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04);" (assignment_expression "pcVar16 = get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04)" identifier = (call_expression "get_symbol_version_string\n                                        (local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04)" identifier (argument_list "(local_d4,uVar15,(char *)strtab,(ulong)(strtab + 2),(uint)nc\n                                         ,(Elf_Internal_Sym *)&vna_other,sym_info,vna_other_00,\n                                         in_stack_ffffff04)" ( identifier , identifier , (cast_expression "(char *)strtab" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (call_expression "(ulong)(strtab + 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(strtab + 2)" ( (binary_expression "strtab + 2" identifier + number_literal) ))) , (cast_expression "(uint)nc" ( (type_descriptor "uint" type_identifier) ) identifier) , (cast_expression "(Elf_Internal_Sym *)&vna_other" ( (type_descriptor "Elf_Internal_Sym *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&vna_other" & identifier)) , identifier , identifier , identifier )))) ;) (if_statement "if (pcVar16 != (char *)0x0) {\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }" if (parenthesized_expression "(pcVar16 != (char *)0x0)" ( (binary_expression "pcVar16 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }\n                    }" { (if_statement "if (nc._0_4_ == 0) {\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }\n                      else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }" if (parenthesized_expression "(nc._0_4_ == 0)" ( (binary_expression "nc._0_4_ == 0" (field_expression "nc._0_4_" identifier . field_identifier) == number_literal) )) (compound_statement "{\n                        sym_info = (versioned_symbol_info *)(uint)vna_other;\n                        printf("@%s (%d)",pcVar16);\n                      }" { (expression_statement "sym_info = (versioned_symbol_info *)(uint)vna_other;" (assignment_expression "sym_info = (versioned_symbol_info *)(uint)vna_other" identifier = (cast_expression "(versioned_symbol_info *)(uint)vna_other" ( (type_descriptor "versioned_symbol_info *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(uint)vna_other" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "printf("@%s (%d)",pcVar16);" (call_expression "printf("@%s (%d)",pcVar16)" identifier (argument_list "("@%s (%d)",pcVar16)" ( (string_literal ""@%s (%d)"" " string_content ") , identifier ))) ;) }) (else_clause "else {\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }" else (compound_statement "{\n                        pcVar22 = "@%s";\n                        if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }\n                        printf(pcVar22,pcVar16);\n                      }" { (expression_statement "pcVar22 = "@%s";" (assignment_expression "pcVar22 = "@%s"" identifier = (string_literal ""@%s"" " string_content ")) ;) (if_statement "if (nc._0_4_ != 1) {\n                          pcVar22 = "@@%s";\n                        }" if (parenthesized_expression "(nc._0_4_ != 1)" ( (binary_expression "nc._0_4_ != 1" (field_expression "nc._0_4_" identifier . field_identifier) != number_literal) )) (compound_statement "{\n                          pcVar22 = "@@%s";\n                        }" { (expression_statement "pcVar22 = "@@%s";" (assignment_expression "pcVar22 = "@@%s"" identifier = (string_literal ""@@%s"" " string_content ")) ;) })) (expression_statement "printf(pcVar22,pcVar16);" (call_expression "printf(pcVar22,pcVar16)" identifier (argument_list "(pcVar22,pcVar16)" ( identifier , identifier ))) ;) }))) })) (expression_statement "putc(10,*(FILE **)puVar10);" (call_expression "putc(10,*(FILE **)puVar10)" identifier (argument_list "(10,*(FILE **)puVar10)" ( number_literal , (pointer_expression "*(FILE **)puVar10" * (cast_expression "(FILE **)puVar10" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (if_statement "if ((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')) {\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }" if (parenthesized_expression "((((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06'))" ( (binary_expression "(((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)) &&\n                       ((filedata->file_header).e_ident[7] != '\x06')" (parenthesized_expression "(((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8))" ( (binary_expression "((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)) && ((filedata->file_header).e_machine != 8)" (parenthesized_expression "((*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15))" ( (binary_expression "(*(byte *)(strtab + 1) >> 4 == 0) &&\n                         (uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)" (parenthesized_expression "(*(byte *)(strtab + 1) >> 4 == 0)" ( (binary_expression "*(byte *)(strtab + 1) >> 4 == 0" (binary_expression "*(byte *)(strtab + 1) >> 4" (pointer_expression "*(byte *)(strtab + 1)" * (cast_expression "(byte *)(strtab + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(strtab + 1)" ( (binary_expression "strtab + 1" identifier + number_literal) )))) >> number_literal) == number_literal) )) && (parenthesized_expression "(uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15)" ( (comma_expression "uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4),\n                         uVar24 <= uVar15" (assignment_expression "uVar24 = *(uint *)((int)&(local_ec->file_header).e_phoff + 4)" identifier = (pointer_expression "*(uint *)((int)&(local_ec->file_header).e_phoff + 4)" * (cast_expression "(uint *)((int)&(local_ec->file_header).e_phoff + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(local_ec->file_header).e_phoff + 4)" ( (binary_expression "(int)&(local_ec->file_header).e_phoff + 4" (cast_expression "(int)&(local_ec->file_header).e_phoff" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(local_ec->file_header).e_phoff" & (field_expression "(local_ec->file_header).e_phoff" (parenthesized_expression "(local_ec->file_header)" ( (field_expression "local_ec->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) ))))) , (binary_expression "uVar24 <= uVar15" identifier <= identifier)) ))) )) && (parenthesized_expression "((filedata->file_header).e_machine != 8)" ( (binary_expression "(filedata->file_header).e_machine != 8" (field_expression "(filedata->file_header).e_machine" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) != number_literal) ))) )) && (parenthesized_expression "((filedata->file_header).e_ident[7] != '\x06')" ( (binary_expression "(filedata->file_header).e_ident[7] != '\x06'" (subscript_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 ]) != (char_literal "'\x06'" ' escape_sequence ')) ))) )) (compound_statement "{\n                      pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );\n                      sym_info = (versioned_symbol_info *)0x5;\n                      pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );\n                      warn(pcVar22,uVar15,pcVar16,uVar24);\n                    }" { (expression_statement "pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          );" (assignment_expression "pcVar16 = printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          )" identifier = (call_expression "printable_section_name\n                                          ((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          )" identifier (argument_list "((Filedata *)filedata_01,(Elf_Internal_Shdr *)sec,local_ec\n                                          )" ( (cast_expression "(Filedata *)filedata_01" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(Elf_Internal_Shdr *)sec" ( (type_descriptor "Elf_Internal_Shdr *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "sym_info = (versioned_symbol_info *)0x5;" (assignment_expression "sym_info = (versioned_symbol_info *)0x5" identifier = (cast_expression "(versioned_symbol_info *)0x5" ( (type_descriptor "versioned_symbol_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 );" (assignment_expression "pcVar22 = (char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 )" identifier = (cast_expression "(char *)dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 )" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 )" identifier (argument_list "(0,\n                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"\n                                                 )" ( number_literal , (string_literal ""local symbol %u found at index >= %s\'s sh_info value of %u\n"" " string_content escape_sequence string_content escape_sequence ") ))))) ;) (expression_statement "warn(pcVar22,uVar15,pcVar16,uVar24);" (call_expression "warn(pcVar22,uVar15,pcVar16,uVar24)" identifier (argument_list "(pcVar22,uVar15,pcVar16,uVar24)" ( identifier , identifier , identifier , identifier ))) ;) })) (expression_statement "uVar15 = uVar15 + 1;" (assignment_expression "uVar15 = uVar15 + 1" identifier = (binary_expression "uVar15 + 1" identifier + number_literal)) ;) (expression_statement "strtab = strtab + 7;" (assignment_expression "strtab = strtab + 7" identifier = (binary_expression "strtab + 7" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar15 < (uint)nb._0_4_)" ( (binary_expression "uVar15 < (uint)nb._0_4_" identifier < (cast_expression "(uint)nb._0_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "nb._0_4_" identifier . field_identifier))) )) ;) })) (expression_statement "free(local_80);" (call_expression "free(local_80)" identifier (argument_list "(local_80)" ( identifier ))) ;) (if_statement "if (filedata->string_table != local_bc) {\n                  free(local_bc);\n                }" if (parenthesized_expression "(filedata->string_table != local_bc)" ( (binary_expression "filedata->string_table != local_bc" (field_expression "filedata->string_table" identifier -> field_identifier) != identifier) )) (compound_statement "{\n                  free(local_bc);\n                }" { (expression_statement "free(local_bc);" (call_expression "free(local_bc)" identifier (argument_list "(local_bc)" ( identifier ))) ;) })) })) }))) })) (expression_statement "local_b0 = local_b0 + 1;" (assignment_expression "local_b0 = local_b0 + 1" identifier = (binary_expression "local_b0 + 1" identifier + number_literal)) ;) (expression_statement "local_ec = (Filedata *)&(local_ec->file_header).e_phentsize;" (assignment_expression "local_ec = (Filedata *)&(local_ec->file_header).e_phentsize" identifier = (cast_expression "(Filedata *)&(local_ec->file_header).e_phentsize" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(local_ec->file_header).e_phentsize" & (field_expression "(local_ec->file_header).e_phentsize" (parenthesized_expression "(local_ec->file_header)" ( (field_expression "local_ec->file_header" identifier -> field_identifier) )) . field_identifier)))) ;) }) while (parenthesized_expression "(local_b0 < (filedata->file_header).e_shnum)" ( (binary_expression "local_b0 < (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)) )) ;) })) (goto_statement "goto LAB_00033418;" goto statement_identifier ;) })) (if_statement "if (do_syms == 0) goto LAB_00033418;" if (parenthesized_expression "(do_syms == 0)" ( (binary_expression "do_syms == 0" identifier == number_literal) )) (goto_statement "goto LAB_00033418;" goto statement_identifier ;)) (labeled_statement "LAB_000337b9:\n    pcVar16 = (char *)dcgettext(0,\n                                "\nDynamic symbol information is not available for displaying symbols.\n"\n                                ,5);" statement_identifier : (expression_statement "pcVar16 = (char *)dcgettext(0,\n                                "\nDynamic symbol information is not available for displaying symbols.\n"\n                                ,5);" (assignment_expression "pcVar16 = (char *)dcgettext(0,\n                                "\nDynamic symbol information is not available for displaying symbols.\n"\n                                ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                "\nDynamic symbol information is not available for displaying symbols.\n"\n                                ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                "\nDynamic symbol information is not available for displaying symbols.\n"\n                                ,5)" identifier (argument_list "(0,\n                                "\nDynamic symbol information is not available for displaying symbols.\n"\n                                ,5)" ( number_literal , (string_literal ""\nDynamic symbol information is not available for displaying symbols.\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "printf(pcVar16);" (call_expression "printf(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) (if_statement "if (do_histogram == 0) goto LAB_000337f0;" if (parenthesized_expression "(do_histogram == 0)" ( (binary_expression "do_histogram == 0" identifier == number_literal) )) (goto_statement "goto LAB_000337f0;" goto statement_identifier ;)) (labeled_statement "LAB_00033426:\n    local_7c = (size_t)eVar31;" statement_identifier : (expression_statement "local_7c = (size_t)eVar31;" (assignment_expression "local_7c = (size_t)eVar31" identifier = (cast_expression "(size_t)eVar31" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;)) (expression_statement "bVar25 = do_histogram;" (assignment_expression "bVar25 = do_histogram" identifier = identifier) ;) (if_statement "if (local_78 != (bfd_vma *)0x0) {\n      pcVar16 = (char *)dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5);\n      printf(pcVar16,local_7c);\n      puVar21 = (uint *)calloc(local_7c,4);\n      if (puVar21 == (uint *)0x0) {\n        pcVar16 = "Out of memory allocating space for histogram buckets\n";\n        goto LAB_00034166;\n      }\n      pvVar19 = xcmalloc(local_e0,1);\n      memset(pvVar19,0,local_e0);\n      pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n      printf(pcVar16);\n      if (eVar31 == 0) {\n        free(pvVar19);\n        puVar17 = (uint *)calloc(1,4);\n        if (puVar17 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar15 = 0;\n        uVar24 = 0;\n        local_b4 = puVar21;\n        do {\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c != local_c4);\n        free(pvVar19);\n        puVar17 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar17 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }\n        puVar18 = puVar21;\n        do {\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        } while (puVar21 + local_7c != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (uVar15 != 0) {\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }\n      }\n      free(puVar17);\n      free(puVar21);\n      goto LAB_000337ff;\n    }" if (parenthesized_expression "(local_78 != (bfd_vma *)0x0)" ( (binary_expression "local_78 != (bfd_vma *)0x0" identifier != (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcVar16 = (char *)dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5);\n      printf(pcVar16,local_7c);\n      puVar21 = (uint *)calloc(local_7c,4);\n      if (puVar21 == (uint *)0x0) {\n        pcVar16 = "Out of memory allocating space for histogram buckets\n";\n        goto LAB_00034166;\n      }\n      pvVar19 = xcmalloc(local_e0,1);\n      memset(pvVar19,0,local_e0);\n      pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n      printf(pcVar16);\n      if (eVar31 == 0) {\n        free(pvVar19);\n        puVar17 = (uint *)calloc(1,4);\n        if (puVar17 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar15 = 0;\n        uVar24 = 0;\n        local_b4 = puVar21;\n        do {\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c != local_c4);\n        free(pvVar19);\n        puVar17 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar17 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }\n        puVar18 = puVar21;\n        do {\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        } while (puVar21 + local_7c != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (uVar15 != 0) {\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }\n      }\n      free(puVar17);\n      free(puVar21);\n      goto LAB_000337ff;\n    }" { (expression_statement "pcVar16 = (char *)dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5);" (assignment_expression "pcVar16 = (char *)dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5)" identifier = (cast_expression "(char *)dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5)" identifier (argument_list "(0,"\nHistogram for bucket list length (total of %lu bucket):\n",\n                                   "\nHistogram for bucket list length (total of %lu buckets):\n",\n                                   local_7c,5)" ( number_literal , (string_literal ""\nHistogram for bucket list length (total of %lu bucket):\n"" " escape_sequence string_content escape_sequence ") , (string_literal ""\nHistogram for bucket list length (total of %lu buckets):\n"" " escape_sequence string_content escape_sequence ") , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar16,local_7c);" (call_expression "printf(pcVar16,local_7c)" identifier (argument_list "(pcVar16,local_7c)" ( identifier , identifier ))) ;) (expression_statement "puVar21 = (uint *)calloc(local_7c,4);" (assignment_expression "puVar21 = (uint *)calloc(local_7c,4)" identifier = (cast_expression "(uint *)calloc(local_7c,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(local_7c,4)" identifier (argument_list "(local_7c,4)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar21 == (uint *)0x0) {\n        pcVar16 = "Out of memory allocating space for histogram buckets\n";\n        goto LAB_00034166;\n      }" if (parenthesized_expression "(puVar21 == (uint *)0x0)" ( (binary_expression "puVar21 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pcVar16 = "Out of memory allocating space for histogram buckets\n";\n        goto LAB_00034166;\n      }" { (expression_statement "pcVar16 = "Out of memory allocating space for histogram buckets\n";" (assignment_expression "pcVar16 = "Out of memory allocating space for histogram buckets\n"" identifier = (string_literal ""Out of memory allocating space for histogram buckets\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_00034166;" goto statement_identifier ;) })) (expression_statement "pvVar19 = xcmalloc(local_e0,1);" (assignment_expression "pvVar19 = xcmalloc(local_e0,1)" identifier = (call_expression "xcmalloc(local_e0,1)" identifier (argument_list "(local_e0,1)" ( identifier , number_literal )))) ;) (expression_statement "memset(pvVar19,0,local_e0);" (call_expression "memset(pvVar19,0,local_e0)" identifier (argument_list "(pvVar19,0,local_e0)" ( identifier , number_literal , identifier ))) ;) (expression_statement "pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);" (assignment_expression "pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5)" identifier = (cast_expression "(char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," Length  Number     %% of total  Coverage\n",5)" identifier (argument_list "(0," Length  Number     %% of total  Coverage\n",5)" ( number_literal , (string_literal "" Length  Number     %% of total  Coverage\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar16);" (call_expression "printf(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) (if_statement "if (eVar31 == 0) {\n        free(pvVar19);\n        puVar17 = (uint *)calloc(1,4);\n        if (puVar17 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar15 = 0;\n        uVar24 = 0;\n        local_b4 = puVar21;\n        do {\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c != local_c4);\n        free(pvVar19);\n        puVar17 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar17 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }\n        puVar18 = puVar21;\n        do {\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        } while (puVar21 + local_7c != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (uVar15 != 0) {\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }\n      }" if (parenthesized_expression "(eVar31 == 0)" ( (binary_expression "eVar31 == 0" identifier == number_literal) )) (compound_statement "{\n        free(pvVar19);\n        puVar17 = (uint *)calloc(1,4);\n        if (puVar17 == (uint *)0x0) goto LAB_00034764;\n      }" { (expression_statement "free(pvVar19);" (call_expression "free(pvVar19)" identifier (argument_list "(pvVar19)" ( identifier ))) ;) (expression_statement "puVar17 = (uint *)calloc(1,4);" (assignment_expression "puVar17 = (uint *)calloc(1,4)" identifier = (cast_expression "(uint *)calloc(1,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(1,4)" identifier (argument_list "(1,4)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar17 == (uint *)0x0) goto LAB_00034764;" if (parenthesized_expression "(puVar17 == (uint *)0x0)" ( (binary_expression "puVar17 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00034764;" goto statement_identifier ;)) }) (else_clause "else {\n        local_c4 = local_78;\n        uVar15 = 0;\n        uVar24 = 0;\n        local_b4 = puVar21;\n        do {\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c != local_c4);\n        free(pvVar19);\n        puVar17 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar17 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }\n        puVar18 = puVar21;\n        do {\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        } while (puVar21 + local_7c != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (uVar15 != 0) {\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }\n      }" else (compound_statement "{\n        local_c4 = local_78;\n        uVar15 = 0;\n        uVar24 = 0;\n        local_b4 = puVar21;\n        do {\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c != local_c4);\n        free(pvVar19);\n        puVar17 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar17 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }\n        puVar18 = puVar21;\n        do {\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        } while (puVar21 + local_7c != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (uVar15 != 0) {\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }\n      }" { (expression_statement "local_c4 = local_78;" (assignment_expression "local_c4 = local_78" identifier = identifier) ;) (expression_statement "uVar15 = 0;" (assignment_expression "uVar15 = 0" identifier = number_literal) ;) (expression_statement "uVar24 = 0;" (assignment_expression "uVar24 = 0" identifier = number_literal) ;) (expression_statement "local_b4 = puVar21;" (assignment_expression "local_b4 = puVar21" identifier = identifier) ;) (do_statement "do {\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c != local_c4);" do (compound_statement "{\n          uVar26 = *(uint *)((int)local_c4 + 4);\n          if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 1;\n          local_b4 = local_b4 + 1;\n        }" { (expression_statement "uVar26 = *(uint *)((int)local_c4 + 4);" (assignment_expression "uVar26 = *(uint *)((int)local_c4 + 4)" identifier = (pointer_expression "*(uint *)((int)local_c4 + 4)" * (cast_expression "(uint *)((int)local_c4 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_c4 + 4)" ( (binary_expression "(int)local_c4 + 4" (cast_expression "(int)local_c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if (uVar26 == 0 && (uint)*local_c4 == 0) {\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }\n          else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }" if (parenthesized_expression "(uVar26 == 0 && (uint)*local_c4 == 0)" ( (binary_expression "uVar26 == 0 && (uint)*local_c4 == 0" (binary_expression "uVar26 == 0" identifier == number_literal) && (binary_expression "(uint)*local_c4 == 0" (binary_expression "(uint)*local_c4" (parenthesized_expression "(uint)" ( identifier )) * identifier) == number_literal)) )) (compound_statement "{\n            local_f4 = (bfd_vma *)(uVar15 + 1);\n          }" { (expression_statement "local_f4 = (bfd_vma *)(uVar15 + 1);" (assignment_expression "local_f4 = (bfd_vma *)(uVar15 + 1)" identifier = (cast_expression "(bfd_vma *)(uVar15 + 1)" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar15 + 1)" ( (binary_expression "uVar15 + 1" identifier + number_literal) )))) ;) }) (else_clause "else {\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }" else (compound_statement "{\n            uVar27 = *local_b4;\n            iVar12 = uVar24 - uVar27;\n            uVar20 = (uint)*local_c4;\n            do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);\n            *local_b4 = uVar27;\n          }" { (expression_statement "uVar27 = *local_b4;" (assignment_expression "uVar27 = *local_b4" identifier = (pointer_expression "*local_b4" * identifier)) ;) (expression_statement "iVar12 = uVar24 - uVar27;" (assignment_expression "iVar12 = uVar24 - uVar27" identifier = (binary_expression "uVar24 - uVar27" identifier - identifier)) ;) (expression_statement "uVar20 = (uint)*local_c4;" (assignment_expression "uVar20 = (uint)*local_c4" identifier = (binary_expression "(uint)*local_c4" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (do_statement "do {\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            } while (uVar26 != 0 || (uint)*pbVar1 != 0);" do (compound_statement "{\n              uVar27 = uVar27 + 1;\n              uVar24 = iVar12 + uVar27;\n              local_f4 = (bfd_vma *)(uVar15 + 1);\n              if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }\n              if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar19 + uVar20) = '\x01';\n              pbVar1 = local_cc + uVar20;\n              uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);\n              uVar20 = (uint)*pbVar1;\n            }" { (expression_statement "uVar27 = uVar27 + 1;" (assignment_expression "uVar27 = uVar27 + 1" identifier = (binary_expression "uVar27 + 1" identifier + number_literal)) ;) (expression_statement "uVar24 = iVar12 + uVar27;" (assignment_expression "uVar24 = iVar12 + uVar27" identifier = (binary_expression "iVar12 + uVar27" identifier + identifier)) ;) (expression_statement "local_f4 = (bfd_vma *)(uVar15 + 1);" (assignment_expression "local_f4 = (bfd_vma *)(uVar15 + 1)" identifier = (cast_expression "(bfd_vma *)(uVar15 + 1)" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar15 + 1)" ( (binary_expression "uVar15 + 1" identifier + number_literal) )))) ;) (if_statement "if (uVar15 < uVar27) {\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }" if (parenthesized_expression "(uVar15 < uVar27)" ( (binary_expression "uVar15 < uVar27" identifier < identifier) )) (compound_statement "{\n                local_f4 = (bfd_vma *)(uVar15 + 2);\n                uVar15 = uVar15 + 1;\n              }" { (expression_statement "local_f4 = (bfd_vma *)(uVar15 + 2);" (assignment_expression "local_f4 = (bfd_vma *)(uVar15 + 2)" identifier = (cast_expression "(bfd_vma *)(uVar15 + 2)" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar15 + 2)" ( (binary_expression "uVar15 + 2" identifier + number_literal) )))) ;) (expression_statement "uVar15 = uVar15 + 1;" (assignment_expression "uVar15 = uVar15 + 1" identifier = (binary_expression "uVar15 + 1" identifier + number_literal)) ;) })) (if_statement "if ((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')) {\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }" if (parenthesized_expression "((local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0'))" ( (binary_expression "(local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc) ||\n                 (*(char *)((int)pvVar19 + uVar20) != '\0')" (parenthesized_expression "(local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc)" ( (binary_expression "local_dc <= uVar26 && (uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc" (binary_expression "local_dc <= uVar26" identifier <= identifier) && (binary_expression "(uint)(uVar20 < local_e0) <= uVar26 - (int)local_dc" (call_expression "(uint)(uVar20 < local_e0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar20 < local_e0)" ( (binary_expression "uVar20 < local_e0" identifier < identifier) ))) <= (binary_expression "uVar26 - (int)local_dc" identifier - (cast_expression "(int)local_dc" ( (type_descriptor "int" primitive_type) ) identifier)))) )) || (parenthesized_expression "(*(char *)((int)pvVar19 + uVar20) != '\0')" ( (binary_expression "*(char *)((int)pvVar19 + uVar20) != '\0'" (pointer_expression "*(char *)((int)pvVar19 + uVar20)" * (cast_expression "(char *)((int)pvVar19 + uVar20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar19 + uVar20)" ( (binary_expression "(int)pvVar19 + uVar20" (cast_expression "(int)pvVar19" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                *local_b4 = uVar27;\n                pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);\n                error(pcVar16);\n                goto LAB_000335a5;\n              }" { (expression_statement "*local_b4 = uVar27;" (assignment_expression "*local_b4 = uVar27" (pointer_expression "*local_b4" * identifier) = identifier) ;) (expression_statement "pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5);" (assignment_expression "pcVar16 = (char *)dcgettext(0,"histogram chain is corrupt\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"histogram chain is corrupt\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"histogram chain is corrupt\n",5)" identifier (argument_list "(0,"histogram chain is corrupt\n",5)" ( number_literal , (string_literal ""histogram chain is corrupt\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "error(pcVar16);" (call_expression "error(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) (goto_statement "goto LAB_000335a5;" goto statement_identifier ;) })) (expression_statement "*(char *)((int)pvVar19 + uVar20) = '\x01';" (assignment_expression "*(char *)((int)pvVar19 + uVar20) = '\x01'" (pointer_expression "*(char *)((int)pvVar19 + uVar20)" * (cast_expression "(char *)((int)pvVar19 + uVar20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar19 + uVar20)" ( (binary_expression "(int)pvVar19 + uVar20" (cast_expression "(int)pvVar19" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "pbVar1 = local_cc + uVar20;" (assignment_expression "pbVar1 = local_cc + uVar20" identifier = (binary_expression "local_cc + uVar20" identifier + identifier)) ;) (expression_statement "uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4);" (assignment_expression "uVar26 = *(uint *)((int)local_cc + uVar20 * 8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_cc + uVar20 * 8 + 4)" * (cast_expression "(uint *)((int)local_cc + uVar20 * 8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_cc + uVar20 * 8 + 4)" ( (binary_expression "(int)local_cc + uVar20 * 8 + 4" (binary_expression "(int)local_cc + uVar20 * 8" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar20 * 8" identifier * number_literal)) + number_literal) ))))) ;) (expression_statement "uVar20 = (uint)*pbVar1;" (assignment_expression "uVar20 = (uint)*pbVar1" identifier = (binary_expression "(uint)*pbVar1" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) }) while (parenthesized_expression "(uVar26 != 0 || (uint)*pbVar1 != 0)" ( (binary_expression "uVar26 != 0 || (uint)*pbVar1 != 0" (binary_expression "uVar26 != 0" identifier != number_literal) || (binary_expression "(uint)*pbVar1 != 0" (binary_expression "(uint)*pbVar1" (parenthesized_expression "(uint)" ( identifier )) * identifier) != number_literal)) )) ;) (expression_statement "*local_b4 = uVar27;" (assignment_expression "*local_b4 = uVar27" (pointer_expression "*local_b4" * identifier) = identifier) ;) }))) (labeled_statement "LAB_000335a5:\n          local_c4 = local_c4 + 1;" statement_identifier : (expression_statement "local_c4 = local_c4 + 1;" (assignment_expression "local_c4 = local_c4 + 1" identifier = (binary_expression "local_c4 + 1" identifier + number_literal)) ;)) (expression_statement "local_b4 = local_b4 + 1;" (assignment_expression "local_b4 = local_b4 + 1" identifier = (binary_expression "local_b4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_78 + local_7c != local_c4)" ( (binary_expression "local_78 + local_7c != local_c4" (binary_expression "local_78 + local_7c" identifier + identifier) != identifier) )) ;) (expression_statement "free(pvVar19);" (call_expression "free(pvVar19)" identifier (argument_list "(pvVar19)" ( identifier ))) ;) (expression_statement "puVar17 = (uint *)calloc((size_t)local_f4,4);" (assignment_expression "puVar17 = (uint *)calloc((size_t)local_f4,4)" identifier = (cast_expression "(uint *)calloc((size_t)local_f4,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc((size_t)local_f4,4)" identifier (argument_list "((size_t)local_f4,4)" ( (cast_expression "(size_t)local_f4" ( (type_descriptor "size_t" primitive_type) ) identifier) , number_literal ))))) ;) (if_statement "if (puVar17 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }" if (parenthesized_expression "(puVar17 == (uint *)0x0)" ( (binary_expression "puVar17 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00034764:\n          free(puVar21);\n          pcVar16 = "Out of memory allocating space for histogram counts\n";\n          goto LAB_00034166;\n        }" { (labeled_statement "LAB_00034764:\n          free(puVar21);" statement_identifier : (expression_statement "free(puVar21);" (call_expression "free(puVar21)" identifier (argument_list "(puVar21)" ( identifier ))) ;)) (expression_statement "pcVar16 = "Out of memory allocating space for histogram counts\n";" (assignment_expression "pcVar16 = "Out of memory allocating space for histogram counts\n"" identifier = (string_literal ""Out of memory allocating space for histogram counts\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_00034166;" goto statement_identifier ;) })) (expression_statement "puVar18 = puVar21;" (assignment_expression "puVar18 = puVar21" identifier = identifier) ;) (do_statement "do {\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        } while (puVar21 + local_7c != puVar18);" do (compound_statement "{\n          uVar26 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar26] = puVar17[uVar26] + 1;\n        }" { (expression_statement "uVar26 = *puVar18;" (assignment_expression "uVar26 = *puVar18" identifier = (pointer_expression "*puVar18" * identifier)) ;) (expression_statement "puVar18 = puVar18 + 1;" (assignment_expression "puVar18 = puVar18 + 1" identifier = (binary_expression "puVar18 + 1" identifier + number_literal)) ;) (expression_statement "puVar17[uVar26] = puVar17[uVar26] + 1;" (assignment_expression "puVar17[uVar26] = puVar17[uVar26] + 1" (subscript_expression "puVar17[uVar26]" identifier [ identifier ]) = (binary_expression "puVar17[uVar26] + 1" (subscript_expression "puVar17[uVar26]" identifier [ identifier ]) + number_literal)) ;) }) while (parenthesized_expression "(puVar21 + local_7c != puVar18)" ( (binary_expression "puVar21 + local_7c != puVar18" (binary_expression "puVar21 + local_7c" identifier + identifier) != identifier) )) ;) (expression_statement "dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c;" (assignment_expression "dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c" identifier = (binary_expression "((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_7c" (parenthesized_expression "((double)*puVar17 * (double)_DAT_0008e498)" ( (binary_expression "(double)*puVar17 * (double)_DAT_0008e498" (cast_expression "(double)*puVar17" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*puVar17" * identifier)) * (cast_expression "(double)_DAT_0008e498" ( (type_descriptor "double" primitive_type) ) identifier)) )) / (cast_expression "(double)(int)local_7c" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_7c" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) (expression_statement "printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );" (call_expression "printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              )" identifier (argument_list "("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              )" ( (string_literal ""      0  %-10lu (%5.1f%%)\n"" " string_content escape_sequence ") , (pointer_expression "*puVar17" * identifier) , (call_expression "SUB84(dVar2,0)" identifier (argument_list "(dVar2,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar2 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar2 >> 0x20)" ( (binary_expression "(ulonglong)dVar2 >> 0x20" (cast_expression "(ulonglong)dVar2" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (if_statement "if (uVar15 != 0) {\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }" if (parenthesized_expression "(uVar15 != 0)" ( (binary_expression "uVar15 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar27 = 0;\n          uVar26 = 1;\n          do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);\n        }" { (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" identifier = number_literal) ;) (expression_statement "uVar26 = 1;" (assignment_expression "uVar26 = 1" identifier = number_literal) ;) (do_statement "do {\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          } while (bVar28);" do (compound_statement "{\n            uVar20 = puVar17[uVar26];\n            uVar27 = uVar27 + uVar20 * uVar26;\n            dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);\n            dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = uVar15 != uVar26;\n            uVar26 = uVar26 + 1;\n          }" { (expression_statement "uVar20 = puVar17[uVar26];" (assignment_expression "uVar20 = puVar17[uVar26]" identifier = (subscript_expression "puVar17[uVar26]" identifier [ identifier ])) ;) (expression_statement "uVar27 = uVar27 + uVar20 * uVar26;" (assignment_expression "uVar27 = uVar27 + uVar20 * uVar26" identifier = (binary_expression "uVar27 + uVar20 * uVar26" identifier + (binary_expression "uVar20 * uVar26" identifier * identifier))) ;) (expression_statement "dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24);" (assignment_expression "dVar2 = (double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24)" identifier = (cast_expression "(double)(((float)uVar27 * _DAT_0008e498) / (float)uVar24)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar27 * _DAT_0008e498) / (float)uVar24)" ( (binary_expression "((float)uVar27 * _DAT_0008e498) / (float)uVar24" (parenthesized_expression "((float)uVar27 * _DAT_0008e498)" ( (binary_expression "(float)uVar27 * _DAT_0008e498" (cast_expression "(float)uVar27" ( (type_descriptor "float" primitive_type) ) identifier) * identifier) )) / (cast_expression "(float)uVar24" ( (type_descriptor "float" primitive_type) ) identifier)) )))) ;) (expression_statement "dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c);" (assignment_expression "dVar3 = (double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c)" identifier = (cast_expression "(double)(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c)" ( (binary_expression "((float)uVar20 * _DAT_0008e498) / (float)(int)local_7c" (parenthesized_expression "((float)uVar20 * _DAT_0008e498)" ( (binary_expression "(float)uVar20 * _DAT_0008e498" (cast_expression "(float)uVar20" ( (type_descriptor "float" primitive_type) ) identifier) * identifier) )) / (cast_expression "(float)(int)local_7c" ( (type_descriptor "float" primitive_type) ) (cast_expression "(int)local_7c" ( (type_descriptor "int" primitive_type) ) identifier))) )))) ;) (expression_statement "printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));" (call_expression "printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20))" identifier (argument_list "("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar26,uVar20,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20))" ( (string_literal ""%7lu  %-10lu (%5.1f%%)    %5.1f%%\n"" " string_content escape_sequence ") , identifier , identifier , (call_expression "SUB84(dVar3,0)" identifier (argument_list "(dVar3,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" ( (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar2,0)" identifier (argument_list "(dVar2,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar2 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar2 >> 0x20)" ( (binary_expression "(ulonglong)dVar2 >> 0x20" (cast_expression "(ulonglong)dVar2" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (expression_statement "bVar28 = uVar15 != uVar26;" (assignment_expression "bVar28 = uVar15 != uVar26" identifier = (binary_expression "uVar15 != uVar26" identifier != identifier)) ;) (expression_statement "uVar26 = uVar26 + 1;" (assignment_expression "uVar26 = uVar26 + 1" identifier = (binary_expression "uVar26 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) })) }))) (expression_statement "free(puVar17);" (call_expression "free(puVar17)" identifier (argument_list "(puVar17)" ( identifier ))) ;) (expression_statement "free(puVar21);" (call_expression "free(puVar21)" identifier (argument_list "(puVar21)" ( identifier ))) ;) (goto_statement "goto LAB_000337ff;" goto statement_identifier ;) })) }) (else_clause "else {\n    local_e0 = (uint)dynamic_info[4];\n    eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n      if (do_histogram != 0) {\nLAB_00033f90:\n        uVar4 = (filedata->file_header).e_machine;\n        if ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }\n        wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n        iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n        if (iVar12 == 0) {\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }\n        if (do_using_dynamic != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (bfd_vma *)0x0;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        eVar31 = 0;\n        goto LAB_0003325f;\n      }\n      if (do_using_dynamic != 0) {\n        if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;\n        if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)\n        goto LAB_00033382;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\nLAB_00033293:\n        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;\n        goto LAB_00032d84;\n      }\n      if ((uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0) {\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_8c = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n      local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\n      eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      local_54 = local_e0;\n      local_50 = (uint)local_dc;\n      goto LAB_000333c0;\n    }\n    local_cc = (bfd_vma *)0x0;\n    local_78 = (bfd_vma *)0x0;\nLAB_0003325f:\n    if (dynamic_info_DT_GNU_HASH._4_4_ == 0 && (uint)dynamic_info_DT_GNU_HASH == 0)\n    goto LAB_00033740;\n    if (do_histogram == 0) {\n      if (do_using_dynamic != 0) goto LAB_00033293;\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n    iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n    if (iVar12 == 0) {\n      pFVar32 = (FILE *)filedata->handle;\n      uVar33 = 1;\n      sVar13 = fread(nc,0x10,1,pFVar32);\n      if (sVar13 != 1) {\n        pcVar16 = "Failed to read in number of buckets\n";\n        goto LAB_00034303;\n      }\n      eVar29 = (*byte_get)(nc,4);\n      eVar30 = (*byte_get)(nc + 4,4);\n      (*byte_get)(local_24,4);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      uVar33 = 0;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      local_8c = eVar30;\n      if (iVar14 != 0) {\n        pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);\n        error(pcVar16);\n        local_74 = 0;\n        local_6c = (bfd_vma *)0x0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      local_74._0_4_ = (uint)eVar29;\n      local_74._4_4_ = (uint)(eVar29 >> 0x20);\n      local_6c = get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74);\n      if (local_6c == (bfd_vma *)0x0) {\nLAB_000346fb:\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      if (local_74._4_4_ == 0 && (uint)local_74 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = (Filedata *)0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar15 = (uint)local_6c[local_54];\n        uVar24 = *(uint *)((int)(local_6c + local_54) + 4);\n        local_8c._0_4_ = (uint)eVar30;\n        local_8c._4_4_ = (uint)(eVar30 >> 0x20);\n        if (uVar24 != 0 || uVar15 != 0) {\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar28 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + bVar28;\n      } while (local_74._4_4_ != local_50 || (uint)local_74 != local_54);\n      if (uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff) goto LAB_000346fb;\n      uVar15 = (int)local_ec - (uint)local_8c;\n      uVar24 = (uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n      if (iVar12 != 0) {\nLAB_000347ff:\n        pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00033073:\n        pcVar16 = (char *)dcgettext(0,pcVar16,5);\n        error(pcVar16);\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      do {\n        pFVar32 = (FILE *)filedata->handle;\n        uVar33 = 1;\n        sVar13 = fread(nc,4,1,pFVar32);\n        if (sVar13 != 1) {\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }\n        if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;\n        bVar28 = 0xfffffffe < uVar15;\n        uVar15 = uVar15 + 1;\n        uVar24 = uVar24 + bVar28;\n        eVar29 = (*byte_get)(nc,4);\n      } while ((eVar29 & 1) == 0);\n      local_74 = CONCAT44(uVar24,uVar15);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      if (iVar14 != 0) goto LAB_000347ff;\n      local_90 = get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15);\n      eVar29 = local_74;\n      if (local_90 == (bfd_vma *)0x0) goto LAB_00034347;\n    }\n    else {\n      pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034303:\n      pcVar16 = (char *)dcgettext(0,pcVar16,5);\n      error(pcVar16);\n      local_74 = 0;\n      local_8c = 0;\n      local_6c = (bfd_vma *)0x0;\n      eVar29 = local_74;\nLAB_00034347:\n      local_74 = eVar29;\n      free(local_6c);\n      if (do_using_dynamic != 0) {\n        return 0;\n      }\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    if ((dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0) ||\n        ((uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (do_dyn_syms != 0) goto LAB_00033a30;\n    if (do_syms != 0) {\n      if (do_using_dynamic != 0) goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = (Filedata *)filedata->section_headers;\n      if (local_ec == (Filedata *)0x0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    if (do_histogram != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (bfd_vma *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    bVar25 = do_histogram;\n    free(local_78);\n    free(local_cc);\n  }" else (compound_statement "{\n    local_e0 = (uint)dynamic_info[4];\n    eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);\n    if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n      if (do_histogram != 0) {\nLAB_00033f90:\n        uVar4 = (filedata->file_header).e_machine;\n        if ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }\n        wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n        iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n        if (iVar12 == 0) {\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }\n        if (do_using_dynamic != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (bfd_vma *)0x0;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        eVar31 = 0;\n        goto LAB_0003325f;\n      }\n      if (do_using_dynamic != 0) {\n        if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;\n        if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)\n        goto LAB_00033382;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\nLAB_00033293:\n        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;\n        goto LAB_00032d84;\n      }\n      if ((uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0) {\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_8c = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n      local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\n      eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      local_54 = local_e0;\n      local_50 = (uint)local_dc;\n      goto LAB_000333c0;\n    }\n    local_cc = (bfd_vma *)0x0;\n    local_78 = (bfd_vma *)0x0;\nLAB_0003325f:\n    if (dynamic_info_DT_GNU_HASH._4_4_ == 0 && (uint)dynamic_info_DT_GNU_HASH == 0)\n    goto LAB_00033740;\n    if (do_histogram == 0) {\n      if (do_using_dynamic != 0) goto LAB_00033293;\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n    iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n    if (iVar12 == 0) {\n      pFVar32 = (FILE *)filedata->handle;\n      uVar33 = 1;\n      sVar13 = fread(nc,0x10,1,pFVar32);\n      if (sVar13 != 1) {\n        pcVar16 = "Failed to read in number of buckets\n";\n        goto LAB_00034303;\n      }\n      eVar29 = (*byte_get)(nc,4);\n      eVar30 = (*byte_get)(nc + 4,4);\n      (*byte_get)(local_24,4);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      uVar33 = 0;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      local_8c = eVar30;\n      if (iVar14 != 0) {\n        pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);\n        error(pcVar16);\n        local_74 = 0;\n        local_6c = (bfd_vma *)0x0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      local_74._0_4_ = (uint)eVar29;\n      local_74._4_4_ = (uint)(eVar29 >> 0x20);\n      local_6c = get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74);\n      if (local_6c == (bfd_vma *)0x0) {\nLAB_000346fb:\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      if (local_74._4_4_ == 0 && (uint)local_74 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = (Filedata *)0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar15 = (uint)local_6c[local_54];\n        uVar24 = *(uint *)((int)(local_6c + local_54) + 4);\n        local_8c._0_4_ = (uint)eVar30;\n        local_8c._4_4_ = (uint)(eVar30 >> 0x20);\n        if (uVar24 != 0 || uVar15 != 0) {\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar28 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + bVar28;\n      } while (local_74._4_4_ != local_50 || (uint)local_74 != local_54);\n      if (uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff) goto LAB_000346fb;\n      uVar15 = (int)local_ec - (uint)local_8c;\n      uVar24 = (uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n      if (iVar12 != 0) {\nLAB_000347ff:\n        pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00033073:\n        pcVar16 = (char *)dcgettext(0,pcVar16,5);\n        error(pcVar16);\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      do {\n        pFVar32 = (FILE *)filedata->handle;\n        uVar33 = 1;\n        sVar13 = fread(nc,4,1,pFVar32);\n        if (sVar13 != 1) {\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }\n        if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;\n        bVar28 = 0xfffffffe < uVar15;\n        uVar15 = uVar15 + 1;\n        uVar24 = uVar24 + bVar28;\n        eVar29 = (*byte_get)(nc,4);\n      } while ((eVar29 & 1) == 0);\n      local_74 = CONCAT44(uVar24,uVar15);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      if (iVar14 != 0) goto LAB_000347ff;\n      local_90 = get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15);\n      eVar29 = local_74;\n      if (local_90 == (bfd_vma *)0x0) goto LAB_00034347;\n    }\n    else {\n      pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034303:\n      pcVar16 = (char *)dcgettext(0,pcVar16,5);\n      error(pcVar16);\n      local_74 = 0;\n      local_8c = 0;\n      local_6c = (bfd_vma *)0x0;\n      eVar29 = local_74;\nLAB_00034347:\n      local_74 = eVar29;\n      free(local_6c);\n      if (do_using_dynamic != 0) {\n        return 0;\n      }\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    if ((dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0) ||\n        ((uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (do_dyn_syms != 0) goto LAB_00033a30;\n    if (do_syms != 0) {\n      if (do_using_dynamic != 0) goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = (Filedata *)filedata->section_headers;\n      if (local_ec == (Filedata *)0x0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    if (do_histogram != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (bfd_vma *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    bVar25 = do_histogram;\n    free(local_78);\n    free(local_cc);\n  }" { (expression_statement "local_e0 = (uint)dynamic_info[4];" (assignment_expression "local_e0 = (uint)dynamic_info[4]" identifier = (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ]))) ;) (expression_statement "eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4]);" (assignment_expression "eVar31 = CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" identifier = (call_expression "CONCAT44(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" identifier (argument_list "(dynamic_info[4]._4_4_,(uint)dynamic_info[4])" ( (field_expression "dynamic_info[4]._4_4_" (subscript_expression "dynamic_info[4]" identifier [ number_literal ]) . field_identifier) , (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ])) )))) ;) (if_statement "if (dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0) {\n      if (do_histogram != 0) {\nLAB_00033f90:\n        uVar4 = (filedata->file_header).e_machine;\n        if ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }\n        wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n        iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n        if (iVar12 == 0) {\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }\n        if (do_using_dynamic != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (bfd_vma *)0x0;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        eVar31 = 0;\n        goto LAB_0003325f;\n      }\n      if (do_using_dynamic != 0) {\n        if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;\n        if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)\n        goto LAB_00033382;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\nLAB_00033293:\n        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;\n        goto LAB_00032d84;\n      }\n      if ((uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0) {\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_8c = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n      local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\n      eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      local_54 = local_e0;\n      local_50 = (uint)local_dc;\n      goto LAB_000333c0;\n    }" if (parenthesized_expression "(dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0)" ( (binary_expression "dynamic_info[4]._4_4_ != 0 || (uint)dynamic_info[4] != 0" (binary_expression "dynamic_info[4]._4_4_ != 0" (field_expression "dynamic_info[4]._4_4_" (subscript_expression "dynamic_info[4]" identifier [ number_literal ]) . field_identifier) != number_literal) || (binary_expression "(uint)dynamic_info[4] != 0" (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ])) != number_literal)) )) (compound_statement "{\n      if (do_histogram != 0) {\nLAB_00033f90:\n        uVar4 = (filedata->file_header).e_machine;\n        if ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }\n        wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n        iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n        if (iVar12 == 0) {\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }\n        if (do_using_dynamic != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (bfd_vma *)0x0;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        eVar31 = 0;\n        goto LAB_0003325f;\n      }\n      if (do_using_dynamic != 0) {\n        if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;\n        if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)\n        goto LAB_00033382;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\nLAB_00033293:\n        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;\n        goto LAB_00032d84;\n      }\n      if ((uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0) {\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_8c = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_e0 = (uint)dynamic_info_DT_GNU_HASH;\n      local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;\n      eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_78 = (bfd_vma *)0x0;\n      local_54 = local_e0;\n      local_50 = (uint)local_dc;\n      goto LAB_000333c0;\n    }" { (if_statement "if (do_histogram != 0) {\nLAB_00033f90:\n        uVar4 = (filedata->file_header).e_machine;\n        if ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }\n        wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n        iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n        if (iVar12 == 0) {\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }\n        if (do_using_dynamic != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (bfd_vma *)0x0;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        eVar31 = 0;\n        goto LAB_0003325f;\n      }" if (parenthesized_expression "(do_histogram != 0)" ( (binary_expression "do_histogram != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00033f90:\n        uVar4 = (filedata->file_header).e_machine;\n        if ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }\n        wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));\n        iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n        if (iVar12 == 0) {\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }\n        if (do_using_dynamic != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (bfd_vma *)0x0;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        eVar31 = 0;\n        goto LAB_0003325f;\n      }" { (labeled_statement "LAB_00033f90:\n        uVar4 = (filedata->file_header).e_machine;" statement_identifier : (expression_statement "uVar4 = (filedata->file_header).e_machine;" (assignment_expression "uVar4 = (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 ((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)) {\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }" if (parenthesized_expression "((uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390))" ( (binary_expression "(uVar4 == 0x9026 || uVar4 == 0x16) || (sVar13 = 4, uVar4 == 0xa390)" (parenthesized_expression "(uVar4 == 0x9026 || uVar4 == 0x16)" ( (binary_expression "uVar4 == 0x9026 || uVar4 == 0x16" (binary_expression "uVar4 == 0x9026" identifier == number_literal) || (binary_expression "uVar4 == 0x16" identifier == number_literal)) )) || (parenthesized_expression "(sVar13 = 4, uVar4 == 0xa390)" ( (comma_expression "sVar13 = 4, uVar4 == 0xa390" (assignment_expression "sVar13 = 4" identifier = number_literal) , (binary_expression "uVar4 == 0xa390" identifier == number_literal)) ))) )) (compound_statement "{\n          sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;\n        }" { (expression_statement "sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;" (assignment_expression "sVar13 = (uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4" identifier = (binary_expression "(uint)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4" (binary_expression "(uint)((filedata->file_header).e_ident[4] == '\x02') * 4" (call_expression "(uint)((filedata->file_header).e_ident[4] == '\x02')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((filedata->file_header).e_ident[4] == '\x02')" ( (binary_expression "(filedata->file_header).e_ident[4] == '\x02'" (subscript_expression "(filedata->file_header).e_ident[4]" (field_expression "(filedata->file_header).e_ident" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) == (char_literal "'\x02'" ' escape_sequence ')) ))) * number_literal) + number_literal)) ;) })) (expression_statement "wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));" (assignment_expression "wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc))" identifier = (call_expression "offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc))" identifier (argument_list "(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc))" ( identifier , number_literal , (call_expression "CONCAT44(in_stack_ffffff00,in_stack_fffffefc)" identifier (argument_list "(in_stack_ffffff00,in_stack_fffffefc)" ( identifier , identifier ))) )))) ;) (expression_statement "iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);" (assignment_expression "iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0)" identifier = (call_expression "fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0)" identifier (argument_list "((FILE *)filedata->handle,wVar11 + archive_file_offset,0)" ( (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier)) , (binary_expression "wVar11 + archive_file_offset" identifier + identifier) , number_literal )))) ;) (if_statement "if (iVar12 == 0) {\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }\n          in_stack_ffffff00 = (FILE *)filedata->handle;\n          in_stack_fffffefc = 1;\n          sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);\n          if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }\n          eVar31 = (*byte_get)(nb,sVar13);\n          sVar23 = sVar13;\n          eVar29 = (*byte_get)(nc,sVar13);\n          local_e0 = (uint)eVar29;\n          local_dc = (uint *)(eVar29 >> 0x20);\n          local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);\n          local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);\n          if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;\n        }" { (expression_statement "in_stack_ffffff00 = (FILE *)filedata->handle;" (assignment_expression "in_stack_ffffff00 = (FILE *)filedata->handle" identifier = (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier))) ;) (expression_statement "sVar23 = fread(nb,sVar13,1,in_stack_ffffff00);" (assignment_expression "sVar23 = fread(nb,sVar13,1,in_stack_ffffff00)" identifier = (call_expression "fread(nb,sVar13,1,in_stack_ffffff00)" identifier (argument_list "(nb,sVar13,1,in_stack_ffffff00)" ( identifier , identifier , number_literal , identifier )))) ;) (if_statement "if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }" if (parenthesized_expression "(sVar23 != 1)" ( (binary_expression "sVar23 != 1" identifier != number_literal) )) (compound_statement "{\n            pcVar16 = "Failed to read in number of buckets\n";\n            goto LAB_00034039;\n          }" { (expression_statement "pcVar16 = "Failed to read in number of buckets\n";" (assignment_expression "pcVar16 = "Failed to read in number of buckets\n"" identifier = (string_literal ""Failed to read in number of buckets\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_00034039;" goto statement_identifier ;) })) (expression_statement "in_stack_ffffff00 = (FILE *)filedata->handle;" (assignment_expression "in_stack_ffffff00 = (FILE *)filedata->handle" identifier = (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier))) ;) (expression_statement "in_stack_fffffefc = 1;" (assignment_expression "in_stack_fffffefc = 1" identifier = number_literal) ;) (expression_statement "sVar23 = fread(nc,sVar13,1,in_stack_ffffff00);" (assignment_expression "sVar23 = fread(nc,sVar13,1,in_stack_ffffff00)" identifier = (call_expression "fread(nc,sVar13,1,in_stack_ffffff00)" identifier (argument_list "(nc,sVar13,1,in_stack_ffffff00)" ( identifier , identifier , number_literal , identifier )))) ;) (if_statement "if (sVar23 != 1) {\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }" if (parenthesized_expression "(sVar23 != 1)" ( (binary_expression "sVar23 != 1" identifier != number_literal) )) (compound_statement "{\n            pcVar16 = "Failed to read in number of chains\n";\n            goto LAB_00034039;\n          }" { (expression_statement "pcVar16 = "Failed to read in number of chains\n";" (assignment_expression "pcVar16 = "Failed to read in number of chains\n"" identifier = (string_literal ""Failed to read in number of chains\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_00034039;" goto statement_identifier ;) })) (expression_statement "eVar31 = (*byte_get)(nb,sVar13);" (assignment_expression "eVar31 = (*byte_get)(nb,sVar13)" identifier = (call_expression "(*byte_get)(nb,sVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(nb,sVar13)" ( identifier , identifier )))) ;) (expression_statement "sVar23 = sVar13;" (assignment_expression "sVar23 = sVar13" identifier = identifier) ;) (expression_statement "eVar29 = (*byte_get)(nc,sVar13);" (assignment_expression "eVar29 = (*byte_get)(nc,sVar13)" identifier = (call_expression "(*byte_get)(nc,sVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(nc,sVar13)" ( identifier , identifier )))) ;) (expression_statement "local_e0 = (uint)eVar29;" (assignment_expression "local_e0 = (uint)eVar29" identifier = (cast_expression "(uint)eVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_dc = (uint *)(eVar29 >> 0x20);" (assignment_expression "local_dc = (uint *)(eVar29 >> 0x20)" identifier = (cast_expression "(uint *)(eVar29 >> 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(eVar29 >> 0x20)" ( (binary_expression "eVar29 >> 0x20" identifier >> number_literal) )))) ;) (expression_statement "local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31);" (assignment_expression "local_78 = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31)" identifier = (call_expression "get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31)" identifier (argument_list "(filedata,CONCAT44(sVar23,sVar13),(uint)eVar31)" ( identifier , (call_expression "CONCAT44(sVar23,sVar13)" identifier (argument_list "(sVar23,sVar13)" ( identifier , identifier ))) , (cast_expression "(uint)eVar31" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0);" (assignment_expression "local_cc = get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0)" identifier = (call_expression "get_dynamic_data(filedata,CONCAT44(sVar23,sVar13),local_e0)" identifier (argument_list "(filedata,CONCAT44(sVar23,sVar13),local_e0)" ( identifier , (call_expression "CONCAT44(sVar23,sVar13)" identifier (argument_list "(sVar23,sVar13)" ( identifier , identifier ))) , identifier )))) ;) (if_statement "if ((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)) goto LAB_0003325f;" if (parenthesized_expression "((local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0))" ( (binary_expression "(local_78 != (bfd_vma *)0x0) && (local_cc != (bfd_vma *)0x0)" (parenthesized_expression "(local_78 != (bfd_vma *)0x0)" ( (binary_expression "local_78 != (bfd_vma *)0x0" identifier != (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(local_cc != (bfd_vma *)0x0)" ( (binary_expression "local_cc != (bfd_vma *)0x0" identifier != (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_0003325f;" goto statement_identifier ;)) }) (else_clause "else {\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }" else (compound_statement "{\n          pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034039:\n          in_stack_fffffefc = 5;\n          pcVar16 = (char *)dcgettext(0,pcVar16);\n          error(pcVar16);\n          local_cc = (bfd_vma *)0x0;\n          local_78 = (bfd_vma *)0x0;\n        }" { (expression_statement "pcVar16 = "Unable to seek to start of dynamic information\n";" (assignment_expression "pcVar16 = "Unable to seek to start of dynamic information\n"" identifier = (string_literal ""Unable to seek to start of dynamic information\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_00034039:\n          in_stack_fffffefc = 5;" statement_identifier : (expression_statement "in_stack_fffffefc = 5;" (assignment_expression "in_stack_fffffefc = 5" identifier = number_literal) ;)) (expression_statement "pcVar16 = (char *)dcgettext(0,pcVar16);" (assignment_expression "pcVar16 = (char *)dcgettext(0,pcVar16)" identifier = (cast_expression "(char *)dcgettext(0,pcVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar16)" identifier (argument_list "(0,pcVar16)" ( number_literal , identifier ))))) ;) (expression_statement "error(pcVar16);" (call_expression "error(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) (expression_statement "local_cc = (bfd_vma *)0x0;" (assignment_expression "local_cc = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (bfd_vma *)0x0;" (assignment_expression "local_78 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (if_statement "if (do_using_dynamic != 0) {\n          return 0;\n        }" if (parenthesized_expression "(do_using_dynamic != 0)" ( (binary_expression "do_using_dynamic != 0" identifier != number_literal) )) (compound_statement "{\n          return 0;\n        }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "free(local_78);" (call_expression "free(local_78)" identifier (argument_list "(local_78)" ( identifier ))) ;) (expression_statement "free(local_cc);" (call_expression "free(local_cc)" identifier (argument_list "(local_cc)" ( identifier ))) ;) (expression_statement "local_cc = (bfd_vma *)0x0;" (assignment_expression "local_cc = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (bfd_vma *)0x0;" (assignment_expression "local_78 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_e0 = 0;" (assignment_expression "local_e0 = 0" identifier = number_literal) ;) (expression_statement "local_dc = (uint *)0x0;" (assignment_expression "local_dc = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "eVar31 = 0;" (assignment_expression "eVar31 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0003325f;" goto statement_identifier ;) })) (if_statement "if (do_using_dynamic != 0) {\n        if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;\n        if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)\n        goto LAB_00033382;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\nLAB_00033293:\n        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;\n        goto LAB_00032d84;\n      }" if (parenthesized_expression "(do_using_dynamic != 0)" ( (binary_expression "do_using_dynamic != 0" identifier != number_literal) )) (compound_statement "{\n        if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;\n        if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)\n        goto LAB_00033382;\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\nLAB_00033293:\n        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;\n        goto LAB_00032d84;\n      }" { (if_statement "if ((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)) goto LAB_00033f90;" if (parenthesized_expression "((do_dyn_syms == 0) && (dynamic_strings != (char *)0x0))" ( (binary_expression "(do_dyn_syms == 0) && (dynamic_strings != (char *)0x0)" (parenthesized_expression "(do_dyn_syms == 0)" ( (binary_expression "do_dyn_syms == 0" identifier == number_literal) )) && (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)) ))) )) (goto_statement "goto LAB_00033f90;" goto statement_identifier ;)) (if_statement "if ((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)\n        goto LAB_00033382;" if (parenthesized_expression "((uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)" ( (binary_expression "(uint)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0" (binary_expression "(uint)dynamic_info_DT_GNU_HASH == 0" (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier) == number_literal) && (binary_expression "dynamic_info_DT_GNU_HASH._4_4_ == 0" (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier) == number_literal)) )) (goto_statement "goto LAB_00033382;" goto statement_identifier ;)) (expression_statement "local_78 = (bfd_vma *)0x0;" (assignment_expression "local_78 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_e0 = 0;" (assignment_expression "local_e0 = 0" identifier = number_literal) ;) (expression_statement "local_dc = (uint *)0x0;" (assignment_expression "local_dc = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_cc = (bfd_vma *)0x0;" (assignment_expression "local_cc = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "eVar31 = 0;" (assignment_expression "eVar31 = 0" identifier = number_literal) ;) (labeled_statement "LAB_00033293:\n        if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;" statement_identifier : (if_statement "if ((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)) goto LAB_000332bc;" if (parenthesized_expression "((do_dyn_syms != 0) || (dynamic_strings == (char *)0x0))" ( (binary_expression "(do_dyn_syms != 0) || (dynamic_strings == (char *)0x0)" (parenthesized_expression "(do_dyn_syms != 0)" ( (binary_expression "do_dyn_syms != 0" identifier != number_literal) )) || (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)) ))) )) (goto_statement "goto LAB_000332bc;" goto statement_identifier ;))) (goto_statement "goto LAB_00032d84;" goto statement_identifier ;) })) (if_statement "if ((uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0) {\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\n        goto LAB_000332bc;\n      }" if (parenthesized_expression "((uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0)" ( (binary_expression "(uint)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0" (binary_expression "(uint)dynamic_info_DT_GNU_HASH != 0" (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier) != number_literal) || (binary_expression "dynamic_info_DT_GNU_HASH._4_4_ != 0" (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier) != number_literal)) )) (compound_statement "{\n        local_78 = (bfd_vma *)0x0;\n        local_e0 = 0;\n        local_dc = (uint *)0x0;\n        local_cc = (bfd_vma *)0x0;\n        eVar31 = 0;\n        goto LAB_000332bc;\n      }" { (expression_statement "local_78 = (bfd_vma *)0x0;" (assignment_expression "local_78 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_e0 = 0;" (assignment_expression "local_e0 = 0" identifier = number_literal) ;) (expression_statement "local_dc = (uint *)0x0;" (assignment_expression "local_dc = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_cc = (bfd_vma *)0x0;" (assignment_expression "local_cc = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "eVar31 = 0;" (assignment_expression "eVar31 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_000332bc;" goto statement_identifier ;) })) (labeled_statement "LAB_00033382:\n      local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);" statement_identifier : (expression_statement "local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);" (assignment_expression "local_74 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" identifier = (call_expression "CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" identifier (argument_list "(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" ( (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier) , (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;)) (expression_statement "local_8c = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);" (assignment_expression "local_8c = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" identifier = (call_expression "CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" identifier (argument_list "(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" ( (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier) , (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "local_e0 = (uint)dynamic_info_DT_GNU_HASH;" (assignment_expression "local_e0 = (uint)dynamic_info_DT_GNU_HASH" identifier = (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_;" (assignment_expression "local_dc = (uint *)dynamic_info_DT_GNU_HASH._4_4_" identifier = (cast_expression "(uint *)dynamic_info_DT_GNU_HASH._4_4_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier))) ;) (expression_statement "eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH);" (assignment_expression "eVar31 = CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" identifier = (call_expression "CONCAT44(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" identifier (argument_list "(dynamic_info_DT_GNU_HASH._4_4_,(uint)dynamic_info_DT_GNU_HASH)" ( (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier) , (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "local_90 = (bfd_vma *)0x0;" (assignment_expression "local_90 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (bfd_vma *)0x0;" (assignment_expression "local_6c = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_cc = (bfd_vma *)0x0;" (assignment_expression "local_cc = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (bfd_vma *)0x0;" (assignment_expression "local_78 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_54 = local_e0;" (assignment_expression "local_54 = local_e0" identifier = identifier) ;) (expression_statement "local_50 = (uint)local_dc;" (assignment_expression "local_50 = (uint)local_dc" identifier = (cast_expression "(uint)local_dc" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_000333c0;" goto statement_identifier ;) })) (expression_statement "local_cc = (bfd_vma *)0x0;" (assignment_expression "local_cc = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (bfd_vma *)0x0;" (assignment_expression "local_78 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_0003325f:\n    if (dynamic_info_DT_GNU_HASH._4_4_ == 0 && (uint)dynamic_info_DT_GNU_HASH == 0)\n    goto LAB_00033740;" statement_identifier : (if_statement "if (dynamic_info_DT_GNU_HASH._4_4_ == 0 && (uint)dynamic_info_DT_GNU_HASH == 0)\n    goto LAB_00033740;" if (parenthesized_expression "(dynamic_info_DT_GNU_HASH._4_4_ == 0 && (uint)dynamic_info_DT_GNU_HASH == 0)" ( (binary_expression "dynamic_info_DT_GNU_HASH._4_4_ == 0 && (uint)dynamic_info_DT_GNU_HASH == 0" (binary_expression "dynamic_info_DT_GNU_HASH._4_4_ == 0" (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier) == number_literal) && (binary_expression "(uint)dynamic_info_DT_GNU_HASH == 0" (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier) == number_literal)) )) (goto_statement "goto LAB_00033740;" goto statement_identifier ;))) (if_statement "if (do_histogram == 0) {\n      if (do_using_dynamic != 0) goto LAB_00033293;\n      goto LAB_000332bc;\n    }" if (parenthesized_expression "(do_histogram == 0)" ( (binary_expression "do_histogram == 0" identifier == number_literal) )) (compound_statement "{\n      if (do_using_dynamic != 0) goto LAB_00033293;\n      goto LAB_000332bc;\n    }" { (if_statement "if (do_using_dynamic != 0) goto LAB_00033293;" if (parenthesized_expression "(do_using_dynamic != 0)" ( (binary_expression "do_using_dynamic != 0" identifier != number_literal) )) (goto_statement "goto LAB_00033293;" goto statement_identifier ;)) (goto_statement "goto LAB_000332bc;" goto statement_identifier ;) })) (labeled_statement "LAB_00032d84:\n    wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));" statement_identifier : (expression_statement "wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc));" (assignment_expression "wVar11 = offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc))" identifier = (call_expression "offset_from_vma(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc))" identifier (argument_list "(filedata,0x10,CONCAT44(in_stack_ffffff00,in_stack_fffffefc))" ( identifier , number_literal , (call_expression "CONCAT44(in_stack_ffffff00,in_stack_fffffefc)" identifier (argument_list "(in_stack_ffffff00,in_stack_fffffefc)" ( identifier , identifier ))) )))) ;)) (expression_statement "iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);" (assignment_expression "iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0)" identifier = (call_expression "fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0)" identifier (argument_list "((FILE *)filedata->handle,wVar11 + archive_file_offset,0)" ( (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier)) , (binary_expression "wVar11 + archive_file_offset" identifier + identifier) , number_literal )))) ;) (if_statement "if (iVar12 == 0) {\n      pFVar32 = (FILE *)filedata->handle;\n      uVar33 = 1;\n      sVar13 = fread(nc,0x10,1,pFVar32);\n      if (sVar13 != 1) {\n        pcVar16 = "Failed to read in number of buckets\n";\n        goto LAB_00034303;\n      }\n      eVar29 = (*byte_get)(nc,4);\n      eVar30 = (*byte_get)(nc + 4,4);\n      (*byte_get)(local_24,4);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      uVar33 = 0;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      local_8c = eVar30;\n      if (iVar14 != 0) {\n        pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);\n        error(pcVar16);\n        local_74 = 0;\n        local_6c = (bfd_vma *)0x0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      local_74._0_4_ = (uint)eVar29;\n      local_74._4_4_ = (uint)(eVar29 >> 0x20);\n      local_6c = get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74);\n      if (local_6c == (bfd_vma *)0x0) {\nLAB_000346fb:\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      if (local_74._4_4_ == 0 && (uint)local_74 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = (Filedata *)0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar15 = (uint)local_6c[local_54];\n        uVar24 = *(uint *)((int)(local_6c + local_54) + 4);\n        local_8c._0_4_ = (uint)eVar30;\n        local_8c._4_4_ = (uint)(eVar30 >> 0x20);\n        if (uVar24 != 0 || uVar15 != 0) {\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar28 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + bVar28;\n      } while (local_74._4_4_ != local_50 || (uint)local_74 != local_54);\n      if (uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff) goto LAB_000346fb;\n      uVar15 = (int)local_ec - (uint)local_8c;\n      uVar24 = (uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n      if (iVar12 != 0) {\nLAB_000347ff:\n        pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00033073:\n        pcVar16 = (char *)dcgettext(0,pcVar16,5);\n        error(pcVar16);\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      do {\n        pFVar32 = (FILE *)filedata->handle;\n        uVar33 = 1;\n        sVar13 = fread(nc,4,1,pFVar32);\n        if (sVar13 != 1) {\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }\n        if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;\n        bVar28 = 0xfffffffe < uVar15;\n        uVar15 = uVar15 + 1;\n        uVar24 = uVar24 + bVar28;\n        eVar29 = (*byte_get)(nc,4);\n      } while ((eVar29 & 1) == 0);\n      local_74 = CONCAT44(uVar24,uVar15);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      if (iVar14 != 0) goto LAB_000347ff;\n      local_90 = get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15);\n      eVar29 = local_74;\n      if (local_90 == (bfd_vma *)0x0) goto LAB_00034347;\n    }\n    else {\n      pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034303:\n      pcVar16 = (char *)dcgettext(0,pcVar16,5);\n      error(pcVar16);\n      local_74 = 0;\n      local_8c = 0;\n      local_6c = (bfd_vma *)0x0;\n      eVar29 = local_74;\nLAB_00034347:\n      local_74 = eVar29;\n      free(local_6c);\n      if (do_using_dynamic != 0) {\n        return 0;\n      }\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n      pFVar32 = (FILE *)filedata->handle;\n      uVar33 = 1;\n      sVar13 = fread(nc,0x10,1,pFVar32);\n      if (sVar13 != 1) {\n        pcVar16 = "Failed to read in number of buckets\n";\n        goto LAB_00034303;\n      }\n      eVar29 = (*byte_get)(nc,4);\n      eVar30 = (*byte_get)(nc + 4,4);\n      (*byte_get)(local_24,4);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      uVar33 = 0;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      local_8c = eVar30;\n      if (iVar14 != 0) {\n        pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);\n        error(pcVar16);\n        local_74 = 0;\n        local_6c = (bfd_vma *)0x0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      local_74._0_4_ = (uint)eVar29;\n      local_74._4_4_ = (uint)(eVar29 >> 0x20);\n      local_6c = get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74);\n      if (local_6c == (bfd_vma *)0x0) {\nLAB_000346fb:\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      if (local_74._4_4_ == 0 && (uint)local_74 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = (Filedata *)0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar15 = (uint)local_6c[local_54];\n        uVar24 = *(uint *)((int)(local_6c + local_54) + 4);\n        local_8c._0_4_ = (uint)eVar30;\n        local_8c._4_4_ = (uint)(eVar30 >> 0x20);\n        if (uVar24 != 0 || uVar15 != 0) {\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar28 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + bVar28;\n      } while (local_74._4_4_ != local_50 || (uint)local_74 != local_54);\n      if (uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff) goto LAB_000346fb;\n      uVar15 = (int)local_ec - (uint)local_8c;\n      uVar24 = (uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);\n      if (iVar12 != 0) {\nLAB_000347ff:\n        pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00033073:\n        pcVar16 = (char *)dcgettext(0,pcVar16,5);\n        error(pcVar16);\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }\n      do {\n        pFVar32 = (FILE *)filedata->handle;\n        uVar33 = 1;\n        sVar13 = fread(nc,4,1,pFVar32);\n        if (sVar13 != 1) {\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }\n        if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;\n        bVar28 = 0xfffffffe < uVar15;\n        uVar15 = uVar15 + 1;\n        uVar24 = uVar24 + bVar28;\n        eVar29 = (*byte_get)(nc,4);\n      } while ((eVar29 & 1) == 0);\n      local_74 = CONCAT44(uVar24,uVar15);\n      wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));\n      iVar12 = wVar11 + archive_file_offset;\n      iVar14 = fseek((FILE *)filedata->handle,iVar12,0);\n      if (iVar14 != 0) goto LAB_000347ff;\n      local_90 = get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15);\n      eVar29 = local_74;\n      if (local_90 == (bfd_vma *)0x0) goto LAB_00034347;\n    }" { (expression_statement "pFVar32 = (FILE *)filedata->handle;" (assignment_expression "pFVar32 = (FILE *)filedata->handle" identifier = (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier))) ;) (expression_statement "uVar33 = 1;" (assignment_expression "uVar33 = 1" identifier = number_literal) ;) (expression_statement "sVar13 = fread(nc,0x10,1,pFVar32);" (assignment_expression "sVar13 = fread(nc,0x10,1,pFVar32)" identifier = (call_expression "fread(nc,0x10,1,pFVar32)" identifier (argument_list "(nc,0x10,1,pFVar32)" ( identifier , number_literal , number_literal , identifier )))) ;) (if_statement "if (sVar13 != 1) {\n        pcVar16 = "Failed to read in number of buckets\n";\n        goto LAB_00034303;\n      }" if (parenthesized_expression "(sVar13 != 1)" ( (binary_expression "sVar13 != 1" identifier != number_literal) )) (compound_statement "{\n        pcVar16 = "Failed to read in number of buckets\n";\n        goto LAB_00034303;\n      }" { (expression_statement "pcVar16 = "Failed to read in number of buckets\n";" (assignment_expression "pcVar16 = "Failed to read in number of buckets\n"" identifier = (string_literal ""Failed to read in number of buckets\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_00034303;" goto statement_identifier ;) })) (expression_statement "eVar29 = (*byte_get)(nc,4);" (assignment_expression "eVar29 = (*byte_get)(nc,4)" identifier = (call_expression "(*byte_get)(nc,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(nc,4)" ( identifier , number_literal )))) ;) (expression_statement "eVar30 = (*byte_get)(nc + 4,4);" (assignment_expression "eVar30 = (*byte_get)(nc + 4,4)" identifier = (call_expression "(*byte_get)(nc + 4,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(nc + 4,4)" ( (binary_expression "nc + 4" identifier + number_literal) , number_literal )))) ;) (expression_statement "(*byte_get)(local_24,4);" (call_expression "(*byte_get)(local_24,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(local_24,4)" ( identifier , number_literal ))) ;) (expression_statement "wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));" (assignment_expression "wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33))" identifier = (call_expression "offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33))" identifier (argument_list "(filedata,4,CONCAT44(pFVar32,uVar33))" ( identifier , number_literal , (call_expression "CONCAT44(pFVar32,uVar33)" identifier (argument_list "(pFVar32,uVar33)" ( identifier , identifier ))) )))) ;) (expression_statement "iVar12 = wVar11 + archive_file_offset;" (assignment_expression "iVar12 = wVar11 + archive_file_offset" identifier = (binary_expression "wVar11 + archive_file_offset" identifier + identifier)) ;) (expression_statement "uVar33 = 0;" (assignment_expression "uVar33 = 0" identifier = number_literal) ;) (expression_statement "iVar14 = fseek((FILE *)filedata->handle,iVar12,0);" (assignment_expression "iVar14 = fseek((FILE *)filedata->handle,iVar12,0)" identifier = (call_expression "fseek((FILE *)filedata->handle,iVar12,0)" identifier (argument_list "((FILE *)filedata->handle,iVar12,0)" ( (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier)) , identifier , number_literal )))) ;) (expression_statement "local_8c = eVar30;" (assignment_expression "local_8c = eVar30" identifier = identifier) ;) (if_statement "if (iVar14 != 0) {\n        pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);\n        error(pcVar16);\n        local_74 = 0;\n        local_6c = (bfd_vma *)0x0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }" if (parenthesized_expression "(iVar14 != 0)" ( (binary_expression "iVar14 != 0" identifier != number_literal) )) (compound_statement "{\n        pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);\n        error(pcVar16);\n        local_74 = 0;\n        local_6c = (bfd_vma *)0x0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }" { (expression_statement "pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5);" (assignment_expression "pcVar16 = (char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Unable to seek to start of dynamic information\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Unable to seek to start of dynamic information\n",5)" identifier (argument_list "(0,"Unable to seek to start of dynamic information\n",5)" ( number_literal , (string_literal ""Unable to seek to start of dynamic information\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "error(pcVar16);" (call_expression "error(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) (expression_statement "local_74 = 0;" (assignment_expression "local_74 = 0" identifier = number_literal) ;) (expression_statement "local_6c = (bfd_vma *)0x0;" (assignment_expression "local_6c = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "eVar29 = local_74;" (assignment_expression "eVar29 = local_74" identifier = identifier) ;) (goto_statement "goto LAB_00034347;" goto statement_identifier ;) })) (expression_statement "local_74._0_4_ = (uint)eVar29;" (assignment_expression "local_74._0_4_ = (uint)eVar29" (field_expression "local_74._0_4_" identifier . field_identifier) = (cast_expression "(uint)eVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_74._4_4_ = (uint)(eVar29 >> 0x20);" (assignment_expression "local_74._4_4_ = (uint)(eVar29 >> 0x20)" (field_expression "local_74._4_4_" identifier . field_identifier) = (call_expression "(uint)(eVar29 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(eVar29 >> 0x20)" ( (binary_expression "eVar29 >> 0x20" identifier >> number_literal) )))) ;) (expression_statement "local_6c = get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74);" (assignment_expression "local_6c = get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74)" identifier = (call_expression "get_dynamic_data(filedata,CONCAT44(iVar12,4),(uint)local_74)" identifier (argument_list "(filedata,CONCAT44(iVar12,4),(uint)local_74)" ( identifier , (call_expression "CONCAT44(iVar12,4)" identifier (argument_list "(iVar12,4)" ( identifier , number_literal ))) , (cast_expression "(uint)local_74" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (if_statement "if (local_6c == (bfd_vma *)0x0) {\nLAB_000346fb:\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }" if (parenthesized_expression "(local_6c == (bfd_vma *)0x0)" ( (binary_expression "local_6c == (bfd_vma *)0x0" identifier == (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000346fb:\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }" { (labeled_statement "LAB_000346fb:\n        local_74 = 0;" statement_identifier : (expression_statement "local_74 = 0;" (assignment_expression "local_74 = 0" identifier = number_literal) ;)) (expression_statement "eVar29 = local_74;" (assignment_expression "eVar29 = local_74" identifier = identifier) ;) (goto_statement "goto LAB_00034347;" goto statement_identifier ;) })) (if_statement "if (local_74._4_4_ == 0 && (uint)local_74 == 0) goto LAB_00034347;" if (parenthesized_expression "(local_74._4_4_ == 0 && (uint)local_74 == 0)" ( (binary_expression "local_74._4_4_ == 0 && (uint)local_74 == 0" (binary_expression "local_74._4_4_ == 0" (field_expression "local_74._4_4_" identifier . field_identifier) == number_literal) && (binary_expression "(uint)local_74 == 0" (cast_expression "(uint)local_74" ( (type_descriptor "uint" type_identifier) ) identifier) == number_literal)) )) (goto_statement "goto LAB_00034347;" goto statement_identifier ;)) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) (expression_statement "local_ec = (Filedata *)0xffffffff;" (assignment_expression "local_ec = (Filedata *)0xffffffff" identifier = (cast_expression "(Filedata *)0xffffffff" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uStack_e8 = 0;" (assignment_expression "uStack_e8 = 0" identifier = number_literal) ;) (do_statement "do {\n        uVar15 = (uint)local_6c[local_54];\n        uVar24 = *(uint *)((int)(local_6c + local_54) + 4);\n        local_8c._0_4_ = (uint)eVar30;\n        local_8c._4_4_ = (uint)(eVar30 >> 0x20);\n        if (uVar24 != 0 || uVar15 != 0) {\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar28 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + bVar28;\n      } while (local_74._4_4_ != local_50 || (uint)local_74 != local_54);" do (compound_statement "{\n        uVar15 = (uint)local_6c[local_54];\n        uVar24 = *(uint *)((int)(local_6c + local_54) + 4);\n        local_8c._0_4_ = (uint)eVar30;\n        local_8c._4_4_ = (uint)(eVar30 >> 0x20);\n        if (uVar24 != 0 || uVar15 != 0) {\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar28 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + bVar28;\n      }" { (expression_statement "uVar15 = (uint)local_6c[local_54];" (assignment_expression "uVar15 = (uint)local_6c[local_54]" identifier = (cast_expression "(uint)local_6c[local_54]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_6c[local_54]" identifier [ identifier ]))) ;) (expression_statement "uVar24 = *(uint *)((int)(local_6c + local_54) + 4);" (assignment_expression "uVar24 = *(uint *)((int)(local_6c + local_54) + 4)" identifier = (pointer_expression "*(uint *)((int)(local_6c + local_54) + 4)" * (cast_expression "(uint *)((int)(local_6c + local_54) + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(local_6c + local_54) + 4)" ( (binary_expression "(int)(local_6c + local_54) + 4" (cast_expression "(int)(local_6c + local_54)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(local_6c + local_54)" ( (binary_expression "local_6c + local_54" identifier + identifier) ))) + number_literal) ))))) ;) (expression_statement "local_8c._0_4_ = (uint)eVar30;" (assignment_expression "local_8c._0_4_ = (uint)eVar30" (field_expression "local_8c._0_4_" identifier . field_identifier) = (cast_expression "(uint)eVar30" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_8c._4_4_ = (uint)(eVar30 >> 0x20);" (assignment_expression "local_8c._4_4_ = (uint)(eVar30 >> 0x20)" (field_expression "local_8c._4_4_" identifier . field_identifier) = (call_expression "(uint)(eVar30 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(eVar30 >> 0x20)" ( (binary_expression "eVar30 >> 0x20" identifier >> number_literal) )))) ;) (if_statement "if (uVar24 != 0 || uVar15 != 0) {\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }" if (parenthesized_expression "(uVar24 != 0 || uVar15 != 0)" ( (binary_expression "uVar24 != 0 || uVar15 != 0" (binary_expression "uVar24 != 0" identifier != number_literal) || (binary_expression "uVar15 != 0" identifier != number_literal)) )) (compound_statement "{\n          if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }\n        }" { (if_statement "if (uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))\n          {\n            return 0;\n          }" if (parenthesized_expression "(uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c))" ( (binary_expression "uVar24 < local_8c._4_4_ || uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c)" (binary_expression "uVar24 < local_8c._4_4_" identifier < (field_expression "local_8c._4_4_" identifier . field_identifier)) || (binary_expression "uVar24 - local_8c._4_4_ < (uint)(uVar15 < (uint)local_8c)" (binary_expression "uVar24 - local_8c._4_4_" identifier - (field_expression "local_8c._4_4_" identifier . field_identifier)) < (call_expression "(uint)(uVar15 < (uint)local_8c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar15 < (uint)local_8c)" ( (binary_expression "uVar15 < (uint)local_8c" identifier < (cast_expression "(uint)local_8c" ( (type_descriptor "uint" type_identifier) ) identifier)) ))))) )) (compound_statement "{\n            return 0;\n          }" { (return_statement "return 0;" return number_literal ;) })) (if_statement "if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)) {\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }" if (parenthesized_expression "((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0))" ( (binary_expression "(uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)) ||\n             (local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)" (parenthesized_expression "(uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15))" ( (binary_expression "uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar15)" (binary_expression "uStack_e8 < uVar24" identifier < identifier) || (binary_expression "uStack_e8 - uVar24 < (uint)(local_ec < uVar15)" (binary_expression "uStack_e8 - uVar24" identifier - identifier) < (call_expression "(uint)(local_ec < uVar15)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_ec < uVar15)" ( (binary_expression "local_ec < uVar15" identifier < identifier) ))))) )) || (parenthesized_expression "(local_ec == (Filedata *)0xffffffff && uStack_e8 == 0)" ( (binary_expression "local_ec == (Filedata *)0xffffffff && uStack_e8 == 0" (binary_expression "local_ec == (Filedata *)0xffffffff" identifier == (cast_expression "(Filedata *)0xffffffff" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (binary_expression "uStack_e8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            local_ec = (Filedata *)uVar15;\n            uStack_e8 = uVar24;\n          }" { (expression_statement "local_ec = (Filedata *)uVar15;" (assignment_expression "local_ec = (Filedata *)uVar15" identifier = (cast_expression "(Filedata *)uVar15" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uStack_e8 = uVar24;" (assignment_expression "uStack_e8 = uVar24" identifier = identifier) ;) })) })) (expression_statement "bVar28 = 0xfffffffe < local_54;" (assignment_expression "bVar28 = 0xfffffffe < local_54" identifier = (binary_expression "0xfffffffe < local_54" number_literal < identifier)) ;) (expression_statement "local_54 = local_54 + 1;" (assignment_expression "local_54 = local_54 + 1" identifier = (binary_expression "local_54 + 1" identifier + number_literal)) ;) (expression_statement "local_50 = local_50 + bVar28;" (assignment_expression "local_50 = local_50 + bVar28" identifier = (binary_expression "local_50 + bVar28" identifier + identifier)) ;) }) while (parenthesized_expression "(local_74._4_4_ != local_50 || (uint)local_74 != local_54)" ( (binary_expression "local_74._4_4_ != local_50 || (uint)local_74 != local_54" (binary_expression "local_74._4_4_ != local_50" (field_expression "local_74._4_4_" identifier . field_identifier) != identifier) || (binary_expression "(uint)local_74 != local_54" (cast_expression "(uint)local_74" ( (type_descriptor "uint" type_identifier) ) identifier) != identifier)) )) ;) (if_statement "if (uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff) goto LAB_000346fb;" if (parenthesized_expression "(uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff)" ( (binary_expression "uStack_e8 == 0 && local_ec == (Filedata *)0xffffffff" (binary_expression "uStack_e8 == 0" identifier == number_literal) && (binary_expression "local_ec == (Filedata *)0xffffffff" identifier == (cast_expression "(Filedata *)0xffffffff" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (goto_statement "goto LAB_000346fb;" goto statement_identifier ;)) (expression_statement "uVar15 = (int)local_ec - (uint)local_8c;" (assignment_expression "uVar15 = (int)local_ec - (uint)local_8c" identifier = (binary_expression "(int)local_ec - (uint)local_8c" (cast_expression "(int)local_ec" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(uint)local_8c" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "uVar24 = (uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c);" (assignment_expression "uVar24 = (uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c)" identifier = (binary_expression "(uStack_e8 - local_8c._4_4_) - (uint)(local_ec < (uint)local_8c)" (parenthesized_expression "(uStack_e8 - local_8c._4_4_)" ( (binary_expression "uStack_e8 - local_8c._4_4_" identifier - (field_expression "local_8c._4_4_" identifier . field_identifier)) )) - (call_expression "(uint)(local_ec < (uint)local_8c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_ec < (uint)local_8c)" ( (binary_expression "local_ec < (uint)local_8c" identifier < (cast_expression "(uint)local_8c" ( (type_descriptor "uint" type_identifier) ) identifier)) ))))) ;) (expression_statement "wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));" (assignment_expression "wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33))" identifier = (call_expression "offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33))" identifier (argument_list "(filedata,4,CONCAT44(pFVar32,uVar33))" ( identifier , number_literal , (call_expression "CONCAT44(pFVar32,uVar33)" identifier (argument_list "(pFVar32,uVar33)" ( identifier , identifier ))) )))) ;) (expression_statement "iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0);" (assignment_expression "iVar12 = fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0)" identifier = (call_expression "fseek((FILE *)filedata->handle,wVar11 + archive_file_offset,0)" identifier (argument_list "((FILE *)filedata->handle,wVar11 + archive_file_offset,0)" ( (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier)) , (binary_expression "wVar11 + archive_file_offset" identifier + identifier) , number_literal )))) ;) (if_statement "if (iVar12 != 0) {\nLAB_000347ff:\n        pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00033073:\n        pcVar16 = (char *)dcgettext(0,pcVar16,5);\n        error(pcVar16);\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_000347ff:\n        pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00033073:\n        pcVar16 = (char *)dcgettext(0,pcVar16,5);\n        error(pcVar16);\n        local_74 = 0;\n        eVar29 = local_74;\n        goto LAB_00034347;\n      }" { (labeled_statement "LAB_000347ff:\n        pcVar16 = "Unable to seek to start of dynamic information\n";" statement_identifier : (expression_statement "pcVar16 = "Unable to seek to start of dynamic information\n";" (assignment_expression "pcVar16 = "Unable to seek to start of dynamic information\n"" identifier = (string_literal ""Unable to seek to start of dynamic information\n"" " string_content escape_sequence ")) ;)) (labeled_statement "LAB_00033073:\n        pcVar16 = (char *)dcgettext(0,pcVar16,5);" statement_identifier : (expression_statement "pcVar16 = (char *)dcgettext(0,pcVar16,5);" (assignment_expression "pcVar16 = (char *)dcgettext(0,pcVar16,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar16,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar16,5)" identifier (argument_list "(0,pcVar16,5)" ( number_literal , identifier , number_literal ))))) ;)) (expression_statement "error(pcVar16);" (call_expression "error(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) (expression_statement "local_74 = 0;" (assignment_expression "local_74 = 0" identifier = number_literal) ;) (expression_statement "eVar29 = local_74;" (assignment_expression "eVar29 = local_74" identifier = identifier) ;) (goto_statement "goto LAB_00034347;" goto statement_identifier ;) })) (do_statement "do {\n        pFVar32 = (FILE *)filedata->handle;\n        uVar33 = 1;\n        sVar13 = fread(nc,4,1,pFVar32);\n        if (sVar13 != 1) {\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }\n        if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;\n        bVar28 = 0xfffffffe < uVar15;\n        uVar15 = uVar15 + 1;\n        uVar24 = uVar24 + bVar28;\n        eVar29 = (*byte_get)(nc,4);\n      } while ((eVar29 & 1) == 0);" do (compound_statement "{\n        pFVar32 = (FILE *)filedata->handle;\n        uVar33 = 1;\n        sVar13 = fread(nc,4,1,pFVar32);\n        if (sVar13 != 1) {\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }\n        if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;\n        bVar28 = 0xfffffffe < uVar15;\n        uVar15 = uVar15 + 1;\n        uVar24 = uVar24 + bVar28;\n        eVar29 = (*byte_get)(nc,4);\n      }" { (expression_statement "pFVar32 = (FILE *)filedata->handle;" (assignment_expression "pFVar32 = (FILE *)filedata->handle" identifier = (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier))) ;) (expression_statement "uVar33 = 1;" (assignment_expression "uVar33 = 1" identifier = number_literal) ;) (expression_statement "sVar13 = fread(nc,4,1,pFVar32);" (assignment_expression "sVar13 = fread(nc,4,1,pFVar32)" identifier = (call_expression "fread(nc,4,1,pFVar32)" identifier (argument_list "(nc,4,1,pFVar32)" ( identifier , number_literal , number_literal , identifier )))) ;) (if_statement "if (sVar13 != 1) {\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }" if (parenthesized_expression "(sVar13 != 1)" ( (binary_expression "sVar13 != 1" identifier != number_literal) )) (compound_statement "{\n          pcVar16 = "Failed to determine last chain length\n";\n          goto LAB_00033073;\n        }" { (expression_statement "pcVar16 = "Failed to determine last chain length\n";" (assignment_expression "pcVar16 = "Failed to determine last chain length\n"" identifier = (string_literal ""Failed to determine last chain length\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_00033073;" goto statement_identifier ;) })) (if_statement "if ((uVar24 & uVar15) == 0xffffffff) goto LAB_000346fb;" if (parenthesized_expression "((uVar24 & uVar15) == 0xffffffff)" ( (binary_expression "(uVar24 & uVar15) == 0xffffffff" (parenthesized_expression "(uVar24 & uVar15)" ( (binary_expression "uVar24 & uVar15" identifier & identifier) )) == number_literal) )) (goto_statement "goto LAB_000346fb;" goto statement_identifier ;)) (expression_statement "bVar28 = 0xfffffffe < uVar15;" (assignment_expression "bVar28 = 0xfffffffe < uVar15" identifier = (binary_expression "0xfffffffe < uVar15" number_literal < identifier)) ;) (expression_statement "uVar15 = uVar15 + 1;" (assignment_expression "uVar15 = uVar15 + 1" identifier = (binary_expression "uVar15 + 1" identifier + number_literal)) ;) (expression_statement "uVar24 = uVar24 + bVar28;" (assignment_expression "uVar24 = uVar24 + bVar28" identifier = (binary_expression "uVar24 + bVar28" identifier + identifier)) ;) (expression_statement "eVar29 = (*byte_get)(nc,4);" (assignment_expression "eVar29 = (*byte_get)(nc,4)" identifier = (call_expression "(*byte_get)(nc,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(nc,4)" ( identifier , number_literal )))) ;) }) while (parenthesized_expression "((eVar29 & 1) == 0)" ( (binary_expression "(eVar29 & 1) == 0" (parenthesized_expression "(eVar29 & 1)" ( (binary_expression "eVar29 & 1" identifier & number_literal) )) == number_literal) )) ;) (expression_statement "local_74 = CONCAT44(uVar24,uVar15);" (assignment_expression "local_74 = CONCAT44(uVar24,uVar15)" identifier = (call_expression "CONCAT44(uVar24,uVar15)" identifier (argument_list "(uVar24,uVar15)" ( identifier , identifier )))) ;) (expression_statement "wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33));" (assignment_expression "wVar11 = offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33))" identifier = (call_expression "offset_from_vma(filedata,4,CONCAT44(pFVar32,uVar33))" identifier (argument_list "(filedata,4,CONCAT44(pFVar32,uVar33))" ( identifier , number_literal , (call_expression "CONCAT44(pFVar32,uVar33)" identifier (argument_list "(pFVar32,uVar33)" ( identifier , identifier ))) )))) ;) (expression_statement "iVar12 = wVar11 + archive_file_offset;" (assignment_expression "iVar12 = wVar11 + archive_file_offset" identifier = (binary_expression "wVar11 + archive_file_offset" identifier + identifier)) ;) (expression_statement "iVar14 = fseek((FILE *)filedata->handle,iVar12,0);" (assignment_expression "iVar14 = fseek((FILE *)filedata->handle,iVar12,0)" identifier = (call_expression "fseek((FILE *)filedata->handle,iVar12,0)" identifier (argument_list "((FILE *)filedata->handle,iVar12,0)" ( (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier)) , identifier , number_literal )))) ;) (if_statement "if (iVar14 != 0) goto LAB_000347ff;" if (parenthesized_expression "(iVar14 != 0)" ( (binary_expression "iVar14 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000347ff;" goto statement_identifier ;)) (expression_statement "local_90 = get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15);" (assignment_expression "local_90 = get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15)" identifier = (call_expression "get_dynamic_data(filedata,CONCAT44(iVar12,4),uVar15)" identifier (argument_list "(filedata,CONCAT44(iVar12,4),uVar15)" ( identifier , (call_expression "CONCAT44(iVar12,4)" identifier (argument_list "(iVar12,4)" ( identifier , number_literal ))) , identifier )))) ;) (expression_statement "eVar29 = local_74;" (assignment_expression "eVar29 = local_74" identifier = identifier) ;) (if_statement "if (local_90 == (bfd_vma *)0x0) goto LAB_00034347;" if (parenthesized_expression "(local_90 == (bfd_vma *)0x0)" ( (binary_expression "local_90 == (bfd_vma *)0x0" identifier == (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00034347;" goto statement_identifier ;)) }) (else_clause "else {\n      pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034303:\n      pcVar16 = (char *)dcgettext(0,pcVar16,5);\n      error(pcVar16);\n      local_74 = 0;\n      local_8c = 0;\n      local_6c = (bfd_vma *)0x0;\n      eVar29 = local_74;\nLAB_00034347:\n      local_74 = eVar29;\n      free(local_6c);\n      if (do_using_dynamic != 0) {\n        return 0;\n      }\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" else (compound_statement "{\n      pcVar16 = "Unable to seek to start of dynamic information\n";\nLAB_00034303:\n      pcVar16 = (char *)dcgettext(0,pcVar16,5);\n      error(pcVar16);\n      local_74 = 0;\n      local_8c = 0;\n      local_6c = (bfd_vma *)0x0;\n      eVar29 = local_74;\nLAB_00034347:\n      local_74 = eVar29;\n      free(local_6c);\n      if (do_using_dynamic != 0) {\n        return 0;\n      }\n      local_90 = (bfd_vma *)0x0;\n      local_6c = (bfd_vma *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" { (expression_statement "pcVar16 = "Unable to seek to start of dynamic information\n";" (assignment_expression "pcVar16 = "Unable to seek to start of dynamic information\n"" identifier = (string_literal ""Unable to seek to start of dynamic information\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_00034303:\n      pcVar16 = (char *)dcgettext(0,pcVar16,5);" statement_identifier : (expression_statement "pcVar16 = (char *)dcgettext(0,pcVar16,5);" (assignment_expression "pcVar16 = (char *)dcgettext(0,pcVar16,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar16,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar16,5)" identifier (argument_list "(0,pcVar16,5)" ( number_literal , identifier , number_literal ))))) ;)) (expression_statement "error(pcVar16);" (call_expression "error(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) (expression_statement "local_74 = 0;" (assignment_expression "local_74 = 0" identifier = number_literal) ;) (expression_statement "local_8c = 0;" (assignment_expression "local_8c = 0" identifier = number_literal) ;) (expression_statement "local_6c = (bfd_vma *)0x0;" (assignment_expression "local_6c = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "eVar29 = local_74;" (assignment_expression "eVar29 = local_74" identifier = identifier) ;) (labeled_statement "LAB_00034347:\n      local_74 = eVar29;" statement_identifier : (expression_statement "local_74 = eVar29;" (assignment_expression "local_74 = eVar29" identifier = identifier) ;)) (expression_statement "free(local_6c);" (call_expression "free(local_6c)" identifier (argument_list "(local_6c)" ( identifier ))) ;) (if_statement "if (do_using_dynamic != 0) {\n        return 0;\n      }" if (parenthesized_expression "(do_using_dynamic != 0)" ( (binary_expression "do_using_dynamic != 0" identifier != number_literal) )) (compound_statement "{\n        return 0;\n      }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "local_90 = (bfd_vma *)0x0;" (assignment_expression "local_90 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (bfd_vma *)0x0;" (assignment_expression "local_6c = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) }))) (if_statement "if ((dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0) ||\n        ((uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0)) goto LAB_000333c0;" if (parenthesized_expression "((dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0) ||\n        ((uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0))" ( (binary_expression "(dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0) ||\n        ((uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0)" (parenthesized_expression "(dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0)" ( (binary_expression "dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0" (binary_expression "dynamic_info_DT_GNU_HASH._4_4_ != 0" (field_expression "dynamic_info_DT_GNU_HASH._4_4_" identifier . field_identifier) != number_literal) || (binary_expression "dynamic_info[4]._4_4_ != 0" (field_expression "dynamic_info[4]._4_4_" (subscript_expression "dynamic_info[4]" identifier [ number_literal ]) . field_identifier) != number_literal)) )) || (parenthesized_expression "((uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0)" ( (binary_expression "(uint)dynamic_info_DT_GNU_HASH != 0 || (uint)dynamic_info[4] != 0" (binary_expression "(uint)dynamic_info_DT_GNU_HASH != 0" (cast_expression "(uint)dynamic_info_DT_GNU_HASH" ( (type_descriptor "uint" type_identifier) ) identifier) != number_literal) || (binary_expression "(uint)dynamic_info[4] != 0" (cast_expression "(uint)dynamic_info[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "dynamic_info[4]" identifier [ number_literal ])) != number_literal)) ))) )) (goto_statement "goto LAB_000333c0;" goto statement_identifier ;)) (labeled_statement "LAB_0003378f:\n    if (do_dyn_syms != 0) goto LAB_00033a30;" statement_identifier : (if_statement "if (do_dyn_syms != 0) goto LAB_00033a30;" if (parenthesized_expression "(do_dyn_syms != 0)" ( (binary_expression "do_dyn_syms != 0" identifier != number_literal) )) (goto_statement "goto LAB_00033a30;" goto statement_identifier ;))) (if_statement "if (do_syms != 0) {\n      if (do_using_dynamic != 0) goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = (Filedata *)filedata->section_headers;\n      if (local_ec == (Filedata *)0x0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }" if (parenthesized_expression "(do_syms != 0)" ( (binary_expression "do_syms != 0" identifier != number_literal) )) (compound_statement "{\n      if (do_using_dynamic != 0) goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = (Filedata *)filedata->section_headers;\n      if (local_ec == (Filedata *)0x0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }" { (if_statement "if (do_using_dynamic != 0) goto LAB_000337b9;" if (parenthesized_expression "(do_using_dynamic != 0)" ( (binary_expression "do_using_dynamic != 0" identifier != number_literal) )) (goto_statement "goto LAB_000337b9;" goto statement_identifier ;)) (labeled_statement "LAB_000341b6:\n      local_ec = (Filedata *)filedata->section_headers;" statement_identifier : (expression_statement "local_ec = (Filedata *)filedata->section_headers;" (assignment_expression "local_ec = (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 (local_ec == (Filedata *)0x0) goto LAB_000337b9;" if (parenthesized_expression "(local_ec == (Filedata *)0x0)" ( (binary_expression "local_ec == (Filedata *)0x0" identifier == (cast_expression "(Filedata *)0x0" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000337b9;" goto statement_identifier ;)) (goto_statement "goto LAB_00033a43;" goto statement_identifier ;) })) (labeled_statement "LAB_00033418:\n    if (do_histogram != 0) goto LAB_00033426;" statement_identifier : (if_statement "if (do_histogram != 0) goto LAB_00033426;" if (parenthesized_expression "(do_histogram != 0)" ( (binary_expression "do_histogram != 0" identifier != number_literal) )) (goto_statement "goto LAB_00033426;" goto statement_identifier ;))) (labeled_statement "LAB_000337f0:\n    if (local_78 == (bfd_vma *)0x0) {\n      return 1;\n    }" statement_identifier : (if_statement "if (local_78 == (bfd_vma *)0x0) {\n      return 1;\n    }" if (parenthesized_expression "(local_78 == (bfd_vma *)0x0)" ( (binary_expression "local_78 == (bfd_vma *)0x0" identifier == (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) }))) (labeled_statement "LAB_000337ff:\n    bVar25 = do_histogram;" statement_identifier : (expression_statement "bVar25 = do_histogram;" (assignment_expression "bVar25 = do_histogram" identifier = identifier) ;)) (expression_statement "free(local_78);" (call_expression "free(local_78)" identifier (argument_list "(local_78)" ( identifier ))) ;) (expression_statement "free(local_cc);" (call_expression "free(local_cc)" identifier (argument_list "(local_cc)" ( identifier ))) ;) }))) (if_statement "if (local_6c == (bfd_vma *)0x0) {\n    return 1;\n  }" if (parenthesized_expression "(local_6c == (bfd_vma *)0x0)" ( (binary_expression "local_6c == (bfd_vma *)0x0" identifier == (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return 1;\n  }" { (return_statement "return 1;" return number_literal ;) })) (if_statement "if (bVar25 == 0) {\n    return 1;\n  }" if (parenthesized_expression "(bVar25 == 0)" ( (binary_expression "bVar25 == 0" identifier == number_literal) )) (compound_statement "{\n    return 1;\n  }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar16 = (char *)dcngettext(0,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu bucket):\n"\n                               ,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu buckets):\n"\n                               ,local_54,5);" (assignment_expression "pcVar16 = (char *)dcngettext(0,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu bucket):\n"\n                               ,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu buckets):\n"\n                               ,local_54,5)" identifier = (cast_expression "(char *)dcngettext(0,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu bucket):\n"\n                               ,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu buckets):\n"\n                               ,local_54,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu bucket):\n"\n                               ,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu buckets):\n"\n                               ,local_54,5)" identifier (argument_list "(0,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu bucket):\n"\n                               ,\n                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu buckets):\n"\n                               ,local_54,5)" ( number_literal , (string_literal ""\nHistogram for `.gnu.hash\' bucket list length (total of %lu bucket):\n"" " escape_sequence string_content escape_sequence string_content escape_sequence ") , (string_literal ""\nHistogram for `.gnu.hash\' bucket list length (total of %lu buckets):\n"" " escape_sequence string_content escape_sequence string_content escape_sequence ") , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar16,local_54);" (call_expression "printf(pcVar16,local_54)" identifier (argument_list "(pcVar16,local_54)" ( identifier , identifier ))) ;) (expression_statement "puVar21 = (uint *)calloc(local_54,4);" (assignment_expression "puVar21 = (uint *)calloc(local_54,4)" identifier = (cast_expression "(uint *)calloc(local_54,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(local_54,4)" identifier (argument_list "(local_54,4)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar21 == (uint *)0x0) {\n    pcVar16 = "Out of memory allocating space for gnu histogram buckets\n";\n  }\n  else {\n    pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n    printf(pcVar16);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar17 = (uint *)calloc(1,4);\n      if (puVar17 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar21;\n      do {\n        uVar15 = *(uint *)((int)local_f4 + 4);\n        uVar24 = (uint)*local_f4;\n        if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }\n        local_f4 = local_f4 + 1;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 != local_f4);\n      puVar17 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar17 != (uint *)0x0) {\n        puVar18 = puVar21;\n        do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }\nLAB_000331cb:\n        free(puVar17);\n        free(puVar21);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar21);\n    pcVar16 = "Out of memory allocating space for gnu histogram counts\n";\n  }" if (parenthesized_expression "(puVar21 == (uint *)0x0)" ( (binary_expression "puVar21 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar16 = "Out of memory allocating space for gnu histogram buckets\n";\n  }" { (expression_statement "pcVar16 = "Out of memory allocating space for gnu histogram buckets\n";" (assignment_expression "pcVar16 = "Out of memory allocating space for gnu histogram buckets\n"" identifier = (string_literal ""Out of memory allocating space for gnu histogram buckets\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\n    pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n    printf(pcVar16);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar17 = (uint *)calloc(1,4);\n      if (puVar17 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar21;\n      do {\n        uVar15 = *(uint *)((int)local_f4 + 4);\n        uVar24 = (uint)*local_f4;\n        if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }\n        local_f4 = local_f4 + 1;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 != local_f4);\n      puVar17 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar17 != (uint *)0x0) {\n        puVar18 = puVar21;\n        do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }\nLAB_000331cb:\n        free(puVar17);\n        free(puVar21);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar21);\n    pcVar16 = "Out of memory allocating space for gnu histogram counts\n";\n  }" else (compound_statement "{\n    pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);\n    printf(pcVar16);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar17 = (uint *)calloc(1,4);\n      if (puVar17 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar21;\n      do {\n        uVar15 = *(uint *)((int)local_f4 + 4);\n        uVar24 = (uint)*local_f4;\n        if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }\n        local_f4 = local_f4 + 1;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 != local_f4);\n      puVar17 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar17 != (uint *)0x0) {\n        puVar18 = puVar21;\n        do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }\nLAB_000331cb:\n        free(puVar17);\n        free(puVar21);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar21);\n    pcVar16 = "Out of memory allocating space for gnu histogram counts\n";\n  }" { (expression_statement "pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5);" (assignment_expression "pcVar16 = (char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5)" identifier = (cast_expression "(char *)dcgettext(0," Length  Number     %% of total  Coverage\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," Length  Number     %% of total  Coverage\n",5)" identifier (argument_list "(0," Length  Number     %% of total  Coverage\n",5)" ( number_literal , (string_literal "" Length  Number     %% of total  Coverage\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar16);" (call_expression "printf(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) (if_statement "if (local_50 == 0 && local_54 == 0) {\n      puVar17 = (uint *)calloc(1,4);\n      if (puVar17 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar21;\n      do {\n        uVar15 = *(uint *)((int)local_f4 + 4);\n        uVar24 = (uint)*local_f4;\n        if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }\n        local_f4 = local_f4 + 1;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 != local_f4);\n      puVar17 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar17 != (uint *)0x0) {\n        puVar18 = puVar21;\n        do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }\nLAB_000331cb:\n        free(puVar17);\n        free(puVar21);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" if (parenthesized_expression "(local_50 == 0 && local_54 == 0)" ( (binary_expression "local_50 == 0 && local_54 == 0" (binary_expression "local_50 == 0" identifier == number_literal) && (binary_expression "local_54 == 0" identifier == number_literal)) )) (compound_statement "{\n      puVar17 = (uint *)calloc(1,4);\n      if (puVar17 != (uint *)0x0) goto LAB_000331cb;\n    }" { (expression_statement "puVar17 = (uint *)calloc(1,4);" (assignment_expression "puVar17 = (uint *)calloc(1,4)" identifier = (cast_expression "(uint *)calloc(1,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(1,4)" identifier (argument_list "(1,4)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar17 != (uint *)0x0) goto LAB_000331cb;" if (parenthesized_expression "(puVar17 != (uint *)0x0)" ( (binary_expression "puVar17 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000331cb;" goto statement_identifier ;)) }) (else_clause "else {\n      local_c4 = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar21;\n      do {\n        uVar15 = *(uint *)((int)local_f4 + 4);\n        uVar24 = (uint)*local_f4;\n        if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }\n        local_f4 = local_f4 + 1;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 != local_f4);\n      puVar17 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar17 != (uint *)0x0) {\n        puVar18 = puVar21;\n        do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }\nLAB_000331cb:\n        free(puVar17);\n        free(puVar21);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" else (compound_statement "{\n      local_c4 = (bfd_vma *)0x0;\n      local_cc = (bfd_vma *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar21;\n      do {\n        uVar15 = *(uint *)((int)local_f4 + 4);\n        uVar24 = (uint)*local_f4;\n        if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }\n        local_f4 = local_f4 + 1;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 != local_f4);\n      puVar17 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar17 != (uint *)0x0) {\n        puVar18 = puVar21;\n        do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }\nLAB_000331cb:\n        free(puVar17);\n        free(puVar21);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" { (expression_statement "local_c4 = (bfd_vma *)0x0;" (assignment_expression "local_c4 = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_cc = (bfd_vma *)0x0;" (assignment_expression "local_cc = (bfd_vma *)0x0" identifier = (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_f4 = local_6c;" (assignment_expression "local_f4 = local_6c" identifier = identifier) ;) (expression_statement "local_dc = puVar21;" (assignment_expression "local_dc = puVar21" identifier = identifier) ;) (do_statement "do {\n        uVar15 = *(uint *)((int)local_f4 + 4);\n        uVar24 = (uint)*local_f4;\n        if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }\n        local_f4 = local_f4 + 1;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 != local_f4);" do (compound_statement "{\n        uVar15 = *(uint *)((int)local_f4 + 4);\n        uVar24 = (uint)*local_f4;\n        if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }\n        local_f4 = local_f4 + 1;\n        local_dc = local_dc + 1;\n      }" { (expression_statement "uVar15 = *(uint *)((int)local_f4 + 4);" (assignment_expression "uVar15 = *(uint *)((int)local_f4 + 4)" identifier = (pointer_expression "*(uint *)((int)local_f4 + 4)" * (cast_expression "(uint *)((int)local_f4 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_f4 + 4)" ( (binary_expression "(int)local_f4 + 4" (cast_expression "(int)local_f4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "uVar24 = (uint)*local_f4;" (assignment_expression "uVar24 = (uint)*local_f4" identifier = (binary_expression "(uint)*local_f4" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (if_statement "if (uVar15 != 0 || uVar24 != 0) {\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }" if (parenthesized_expression "(uVar15 != 0 || uVar24 != 0)" ( (binary_expression "uVar15 != 0 || uVar24 != 0" (binary_expression "uVar15 != 0" identifier != number_literal) || (binary_expression "uVar24 != 0" identifier != number_literal)) )) (compound_statement "{\n          uVar26 = uVar24 - (uint)local_8c;\n          uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);\n          if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }\n          *local_dc = uVar15;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }\n          local_c4 = (bfd_vma *)((int)local_c4 + uVar15);\n        }" { (expression_statement "uVar26 = uVar24 - (uint)local_8c;" (assignment_expression "uVar26 = uVar24 - (uint)local_8c" identifier = (binary_expression "uVar24 - (uint)local_8c" identifier - (cast_expression "(uint)local_8c" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c);" (assignment_expression "uVar27 = (uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c)" identifier = (binary_expression "(uVar15 - local_8c._4_4_) - (uint)(uVar24 < (uint)local_8c)" (parenthesized_expression "(uVar15 - local_8c._4_4_)" ( (binary_expression "uVar15 - local_8c._4_4_" identifier - (field_expression "local_8c._4_4_" identifier . field_identifier)) )) - (call_expression "(uint)(uVar24 < (uint)local_8c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar24 < (uint)local_8c)" ( (binary_expression "uVar24 < (uint)local_8c" identifier < (cast_expression "(uint)local_8c" ( (type_descriptor "uint" type_identifier) ) identifier)) ))))) ;) (if_statement "if (uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))\n          {\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }\n          else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }" if (parenthesized_expression "(uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74))" ( (binary_expression "uVar27 < local_74._4_4_ || uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74)" (binary_expression "uVar27 < local_74._4_4_" identifier < (field_expression "local_74._4_4_" identifier . field_identifier)) || (binary_expression "uVar27 - local_74._4_4_ < (uint)(uVar26 < (uint)local_74)" (binary_expression "uVar27 - local_74._4_4_" identifier - (field_expression "local_74._4_4_" identifier . field_identifier)) < (call_expression "(uint)(uVar26 < (uint)local_74)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar26 < (uint)local_74)" ( (binary_expression "uVar26 < (uint)local_74" identifier < (cast_expression "(uint)local_74" ( (type_descriptor "uint" type_identifier) ) identifier)) ))))) )) (compound_statement "{\n            local_58 = 0;\n            local_5c = (uint)local_90[uVar26] & 1;\n            if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }\n          }" { (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" identifier = number_literal) ;) (expression_statement "local_5c = (uint)local_90[uVar26] & 1;" (assignment_expression "local_5c = (uint)local_90[uVar26] & 1" identifier = (binary_expression "(uint)local_90[uVar26] & 1" (cast_expression "(uint)local_90[uVar26]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_90[uVar26]" identifier [ identifier ])) & number_literal)) ;) (if_statement "if (local_5c == 0) {\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }\n            else {\n              uVar15 = 1;\n            }" if (parenthesized_expression "(local_5c == 0)" ( (binary_expression "local_5c == 0" identifier == number_literal) )) (compound_statement "{\n              uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;\n              iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);\n              iVar14 = 0;\n              uVar24 = 1;\n              do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);\n            }" { (expression_statement "uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1;" (assignment_expression "uVar27 = ((uint)local_8c - uVar24) + (uint)local_74 + 1" identifier = (binary_expression "((uint)local_8c - uVar24) + (uint)local_74 + 1" (binary_expression "((uint)local_8c - uVar24) + (uint)local_74" (parenthesized_expression "((uint)local_8c - uVar24)" ( (binary_expression "(uint)local_8c - uVar24" (cast_expression "(uint)local_8c" ( (type_descriptor "uint" type_identifier) ) identifier) - identifier) )) + (cast_expression "(uint)local_74" ( (type_descriptor "uint" type_identifier) ) identifier)) + number_literal)) ;) (expression_statement "iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1);" (assignment_expression "iVar12 = ((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1)" identifier = (binary_expression "((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74) +\n                       (uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1)" (binary_expression "((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_ + (0xfffffffe < (uint)local_74)" (binary_expression "((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)) +\n                       local_74._4_4_" (parenthesized_expression "((local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24))" ( (binary_expression "(local_8c._4_4_ - uVar15) - (uint)((uint)local_8c < uVar24)" (parenthesized_expression "(local_8c._4_4_ - uVar15)" ( (binary_expression "local_8c._4_4_ - uVar15" (field_expression "local_8c._4_4_" identifier . field_identifier) - identifier) )) - (call_expression "(uint)((uint)local_8c < uVar24)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uint)local_8c < uVar24)" ( (binary_expression "(uint)local_8c < uVar24" (cast_expression "(uint)local_8c" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )))) )) + (field_expression "local_74._4_4_" identifier . field_identifier)) + (parenthesized_expression "(0xfffffffe < (uint)local_74)" ( (binary_expression "0xfffffffe < (uint)local_74" number_literal < (cast_expression "(uint)local_74" ( (type_descriptor "uint" type_identifier) ) identifier)) ))) + (cast_expression "(uint)CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4((uint)local_8c - uVar24,(uint)local_74 + 1)" identifier (argument_list "((uint)local_8c - uVar24,(uint)local_74 + 1)" ( (binary_expression "(uint)local_8c - uVar24" (cast_expression "(uint)local_8c" ( (type_descriptor "uint" type_identifier) ) identifier) - identifier) , (binary_expression "(uint)local_74 + 1" (cast_expression "(uint)local_74" ( (type_descriptor "uint" type_identifier) ) identifier) + number_literal) )))))) ;) (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" identifier = number_literal) ;) (expression_statement "uVar24 = 1;" (assignment_expression "uVar24 = 1" identifier = number_literal) ;) (do_statement "do {\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              } while ((local_90[uVar26 + uVar24 + -1] & 1) == 0);" do (compound_statement "{\n                bVar28 = 0xfffffffe < uVar24;\n                uVar24 = uVar24 + 1;\n                iVar14 = iVar14 + (uint)bVar28;\n                uVar15 = uVar27;\n                local_5c = uVar27;\n                local_58 = iVar12;\n                if (iVar14 == iVar12 && uVar24 == uVar27) break;\n                uVar15 = uVar24;\n                local_5c = uVar24;\n                local_58 = iVar14;\n              }" { (expression_statement "bVar28 = 0xfffffffe < uVar24;" (assignment_expression "bVar28 = 0xfffffffe < uVar24" identifier = (binary_expression "0xfffffffe < uVar24" number_literal < identifier)) ;) (expression_statement "uVar24 = uVar24 + 1;" (assignment_expression "uVar24 = uVar24 + 1" identifier = (binary_expression "uVar24 + 1" identifier + number_literal)) ;) (expression_statement "iVar14 = iVar14 + (uint)bVar28;" (assignment_expression "iVar14 = iVar14 + (uint)bVar28" identifier = (binary_expression "iVar14 + (uint)bVar28" identifier + (cast_expression "(uint)bVar28" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "uVar15 = uVar27;" (assignment_expression "uVar15 = uVar27" identifier = identifier) ;) (expression_statement "local_5c = uVar27;" (assignment_expression "local_5c = uVar27" identifier = identifier) ;) (expression_statement "local_58 = iVar12;" (assignment_expression "local_58 = iVar12" identifier = identifier) ;) (if_statement "if (iVar14 == iVar12 && uVar24 == uVar27) break;" if (parenthesized_expression "(iVar14 == iVar12 && uVar24 == uVar27)" ( (binary_expression "iVar14 == iVar12 && uVar24 == uVar27" (binary_expression "iVar14 == iVar12" identifier == identifier) && (binary_expression "uVar24 == uVar27" identifier == identifier)) )) (break_statement "break;" break ;)) (expression_statement "uVar15 = uVar24;" (assignment_expression "uVar15 = uVar24" identifier = identifier) ;) (expression_statement "local_5c = uVar24;" (assignment_expression "local_5c = uVar24" identifier = identifier) ;) (expression_statement "local_58 = iVar14;" (assignment_expression "local_58 = iVar14" identifier = identifier) ;) }) while (parenthesized_expression "((local_90[uVar26 + uVar24 + -1] & 1) == 0)" ( (binary_expression "(local_90[uVar26 + uVar24 + -1] & 1) == 0" (parenthesized_expression "(local_90[uVar26 + uVar24 + -1] & 1)" ( (binary_expression "local_90[uVar26 + uVar24 + -1] & 1" (subscript_expression "local_90[uVar26 + uVar24 + -1]" identifier [ (binary_expression "uVar26 + uVar24 + -1" (binary_expression "uVar26 + uVar24" identifier + identifier) + number_literal) ]) & number_literal) )) == number_literal) )) ;) }) (else_clause "else {\n              uVar15 = 1;\n            }" else (compound_statement "{\n              uVar15 = 1;\n            }" { (expression_statement "uVar15 = 1;" (assignment_expression "uVar15 = 1" identifier = number_literal) ;) }))) }) (else_clause "else {\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }" else (compound_statement "{\n            local_5c = 1;\n            local_58 = 0;\n            uVar15 = 1;\n          }" { (expression_statement "local_5c = 1;" (assignment_expression "local_5c = 1" identifier = number_literal) ;) (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" identifier = number_literal) ;) (expression_statement "uVar15 = 1;" (assignment_expression "uVar15 = 1" identifier = number_literal) ;) }))) (expression_statement "*local_dc = uVar15;" (assignment_expression "*local_dc = uVar15" (pointer_expression "*local_dc" * identifier) = identifier) ;) (if_statement "if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (bfd_vma *)uVar15;\n          }" if (parenthesized_expression "(local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c))" ( (binary_expression "local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)" (binary_expression "local_58 != 0" identifier != number_literal) || (binary_expression "(uint)-local_58 < (uint)(local_cc < local_5c)" (binary_expression "(uint)-local_58" (parenthesized_expression "(uint)" ( identifier )) - identifier) < (call_expression "(uint)(local_cc < local_5c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_cc < local_5c)" ( (binary_expression "local_cc < local_5c" identifier < identifier) ))))) )) (compound_statement "{\n            local_cc = (bfd_vma *)uVar15;\n          }" { (expression_statement "local_cc = (bfd_vma *)uVar15;" (assignment_expression "local_cc = (bfd_vma *)uVar15" identifier = (cast_expression "(bfd_vma *)uVar15" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) })) (expression_statement "local_c4 = (bfd_vma *)((int)local_c4 + uVar15);" (assignment_expression "local_c4 = (bfd_vma *)((int)local_c4 + uVar15)" identifier = (cast_expression "(bfd_vma *)((int)local_c4 + uVar15)" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_c4 + uVar15)" ( (binary_expression "(int)local_c4 + uVar15" (cast_expression "(int)local_c4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) })) (expression_statement "local_f4 = local_f4 + 1;" (assignment_expression "local_f4 = local_f4 + 1" identifier = (binary_expression "local_f4 + 1" identifier + number_literal)) ;) (expression_statement "local_dc = local_dc + 1;" (assignment_expression "local_dc = local_dc + 1" identifier = (binary_expression "local_dc + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_6c + local_54 != local_f4)" ( (binary_expression "local_6c + local_54 != local_f4" (binary_expression "local_6c + local_54" identifier + identifier) != identifier) )) ;) (expression_statement "puVar17 = (uint *)calloc((int)local_cc + 1,4);" (assignment_expression "puVar17 = (uint *)calloc((int)local_cc + 1,4)" identifier = (cast_expression "(uint *)calloc((int)local_cc + 1,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc((int)local_cc + 1,4)" identifier (argument_list "((int)local_cc + 1,4)" ( (binary_expression "(int)local_cc + 1" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))))) ;) (if_statement "if (puVar17 != (uint *)0x0) {\n        puVar18 = puVar21;\n        do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }\nLAB_000331cb:\n        free(puVar17);\n        free(puVar21);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }" if (parenthesized_expression "(puVar17 != (uint *)0x0)" ( (binary_expression "puVar17 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        puVar18 = puVar21;\n        do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);\n        dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;\n        printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );\n        if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }\nLAB_000331cb:\n        free(puVar17);\n        free(puVar21);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }" { (expression_statement "puVar18 = puVar21;" (assignment_expression "puVar18 = puVar21" identifier = identifier) ;) (do_statement "do {\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        } while (puVar21 + local_54 != puVar18);" do (compound_statement "{\n          uVar15 = *puVar18;\n          puVar18 = puVar18 + 1;\n          puVar17[uVar15] = puVar17[uVar15] + 1;\n        }" { (expression_statement "uVar15 = *puVar18;" (assignment_expression "uVar15 = *puVar18" identifier = (pointer_expression "*puVar18" * identifier)) ;) (expression_statement "puVar18 = puVar18 + 1;" (assignment_expression "puVar18 = puVar18 + 1" identifier = (binary_expression "puVar18 + 1" identifier + number_literal)) ;) (expression_statement "puVar17[uVar15] = puVar17[uVar15] + 1;" (assignment_expression "puVar17[uVar15] = puVar17[uVar15] + 1" (subscript_expression "puVar17[uVar15]" identifier [ identifier ]) = (binary_expression "puVar17[uVar15] + 1" (subscript_expression "puVar17[uVar15]" identifier [ identifier ]) + number_literal)) ;) }) while (parenthesized_expression "(puVar21 + local_54 != puVar18)" ( (binary_expression "puVar21 + local_54 != puVar18" (binary_expression "puVar21 + local_54" identifier + identifier) != identifier) )) ;) (expression_statement "dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54;" (assignment_expression "dVar2 = ((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54" identifier = (binary_expression "((double)*puVar17 * (double)_DAT_0008e498) / (double)(int)local_54" (parenthesized_expression "((double)*puVar17 * (double)_DAT_0008e498)" ( (binary_expression "(double)*puVar17 * (double)_DAT_0008e498" (cast_expression "(double)*puVar17" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*puVar17" * identifier)) * (cast_expression "(double)_DAT_0008e498" ( (type_descriptor "double" primitive_type) ) identifier)) )) / (cast_expression "(double)(int)local_54" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_54" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) (expression_statement "printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              );" (call_expression "printf("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              )" identifier (argument_list "("      0  %-10lu (%5.1f%%)\n",*puVar17,SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20)\n              )" ( (string_literal ""      0  %-10lu (%5.1f%%)\n"" " string_content escape_sequence ") , (pointer_expression "*puVar17" * identifier) , (call_expression "SUB84(dVar2,0)" identifier (argument_list "(dVar2,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar2 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar2 >> 0x20)" ( (binary_expression "(ulonglong)dVar2 >> 0x20" (cast_expression "(ulonglong)dVar2" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (if_statement "if (local_cc != (bfd_vma *)0x0) {\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }" if (parenthesized_expression "(local_cc != (bfd_vma *)0x0)" ( (binary_expression "local_cc != (bfd_vma *)0x0" identifier != (cast_expression "(bfd_vma *)0x0" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          uVar24 = 0;\n          uVar15 = 1;\n          do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);\n        }" { (expression_statement "uVar24 = 0;" (assignment_expression "uVar24 = 0" identifier = number_literal) ;) (expression_statement "uVar15 = 1;" (assignment_expression "uVar15 = 1" identifier = number_literal) ;) (do_statement "do {\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          } while (bVar28);" do (compound_statement "{\n            uVar26 = puVar17[uVar15];\n            uVar24 = uVar24 + uVar26 * uVar15;\n            dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);\n            dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);\n            printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));\n            bVar28 = local_cc != (bfd_vma *)uVar15;\n            uVar15 = uVar15 + 1;\n          }" { (expression_statement "uVar26 = puVar17[uVar15];" (assignment_expression "uVar26 = puVar17[uVar15]" identifier = (subscript_expression "puVar17[uVar15]" identifier [ identifier ])) ;) (expression_statement "uVar24 = uVar24 + uVar26 * uVar15;" (assignment_expression "uVar24 = uVar24 + uVar26 * uVar15" identifier = (binary_expression "uVar24 + uVar26 * uVar15" identifier + (binary_expression "uVar26 * uVar15" identifier * identifier))) ;) (expression_statement "dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4);" (assignment_expression "dVar2 = (double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4)" identifier = (cast_expression "(double)(((float)uVar24 * _DAT_0008e498) / (float)local_c4)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar24 * _DAT_0008e498) / (float)local_c4)" ( (binary_expression "((float)uVar24 * _DAT_0008e498) / (float)local_c4" (parenthesized_expression "((float)uVar24 * _DAT_0008e498)" ( (binary_expression "(float)uVar24 * _DAT_0008e498" (cast_expression "(float)uVar24" ( (type_descriptor "float" primitive_type) ) identifier) * identifier) )) / (cast_expression "(float)local_c4" ( (type_descriptor "float" primitive_type) ) identifier)) )))) ;) (expression_statement "dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54);" (assignment_expression "dVar3 = (double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54)" identifier = (cast_expression "(double)(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar26 * _DAT_0008e498) / (float)(int)local_54)" ( (binary_expression "((float)uVar26 * _DAT_0008e498) / (float)(int)local_54" (parenthesized_expression "((float)uVar26 * _DAT_0008e498)" ( (binary_expression "(float)uVar26 * _DAT_0008e498" (cast_expression "(float)uVar26" ( (type_descriptor "float" primitive_type) ) identifier) * identifier) )) / (cast_expression "(float)(int)local_54" ( (type_descriptor "float" primitive_type) ) (cast_expression "(int)local_54" ( (type_descriptor "int" primitive_type) ) identifier))) )))) ;) (expression_statement "printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20));" (call_expression "printf("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20))" identifier (argument_list "("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",uVar15,uVar26,SUB84(dVar3,0),\n                   (int)((ulonglong)dVar3 >> 0x20),SUB84(dVar2,0),(int)((ulonglong)dVar2 >> 0x20))" ( (string_literal ""%7lu  %-10lu (%5.1f%%)    %5.1f%%\n"" " string_content escape_sequence ") , identifier , identifier , (call_expression "SUB84(dVar3,0)" identifier (argument_list "(dVar3,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" ( (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar2,0)" identifier (argument_list "(dVar2,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar2 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar2 >> 0x20)" ( (binary_expression "(ulonglong)dVar2 >> 0x20" (cast_expression "(ulonglong)dVar2" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (expression_statement "bVar28 = local_cc != (bfd_vma *)uVar15;" (assignment_expression "bVar28 = local_cc != (bfd_vma *)uVar15" identifier = (binary_expression "local_cc != (bfd_vma *)uVar15" identifier != (cast_expression "(bfd_vma *)uVar15" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar15 = uVar15 + 1;" (assignment_expression "uVar15 = uVar15 + 1" identifier = (binary_expression "uVar15 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) })) (labeled_statement "LAB_000331cb:\n        free(puVar17);" statement_identifier : (expression_statement "free(puVar17);" (call_expression "free(puVar17)" identifier (argument_list "(puVar17)" ( identifier ))) ;)) (expression_statement "free(puVar21);" (call_expression "free(puVar21)" identifier (argument_list "(puVar21)" ( identifier ))) ;) (expression_statement "free(local_6c);" (call_expression "free(local_6c)" identifier (argument_list "(local_6c)" ( identifier ))) ;) (expression_statement "free(local_90);" (call_expression "free(local_90)" identifier (argument_list "(local_90)" ( identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) }))) (expression_statement "free(puVar21);" (call_expression "free(puVar21)" identifier (argument_list "(puVar21)" ( identifier ))) ;) (expression_statement "pcVar16 = "Out of memory allocating space for gnu histogram counts\n";" (assignment_expression "pcVar16 = "Out of memory allocating space for gnu histogram counts\n"" identifier = (string_literal ""Out of memory allocating space for gnu histogram counts\n"" " string_content escape_sequence ")) ;) }))) (labeled_statement "LAB_00034166:\n  pcVar16 = (char *)dcgettext(0,pcVar16,5);" statement_identifier : (expression_statement "pcVar16 = (char *)dcgettext(0,pcVar16,5);" (assignment_expression "pcVar16 = (char *)dcgettext(0,pcVar16,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar16,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar16,5)" identifier (argument_list "(0,pcVar16,5)" ( number_literal , identifier , number_literal ))))) ;)) (expression_statement "error(pcVar16);" (call_expression "error(pcVar16)" identifier (argument_list "(pcVar16)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })))
(translation_unit "undefined4 FUN_00032cd0(void)\n\n{\n  undefined4 *puVar1;\n  int iVar2;\n  double dVar3;\n  byte bVar4;\n  short sVar5;\n  uint uVar6;\n  ulonglong uVar7;\n  ulonglong uVar8;\n  int iVar9;\n  int iVar10;\n  size_t sVar11;\n  uint uVar12;\n  uint *puVar13;\n  uint *puVar14;\n  void *pvVar15;\n  uint uVar16;\n  char *pcVar17;\n  uint *puVar18;\n  undefined4 uVar19;\n  size_t sVar20;\n  uint uVar21;\n  uint uVar22;\n  char *__format;\n  int unaff_EBP;\n  uint uVar23;\n  uint uVar24;\n  bool bVar25;\n  longlong lVar26;\n  longlong lVar27;\n  longlong lVar28;\n  longlong lVar29;\n  undefined4 uVar30;\n  undefined *puVar31;\n  undefined4 uVar32;\n  uint *local_f4;\n  uint local_ec;\n  uint uStack_e8;\n  uint local_e0;\n  uint *local_dc;\n  uint local_d4;\n  void *local_cc;\n  uint *local_c4;\n  void *local_bc;\n  uint *local_b4;\n  uint local_b0;\n  void *local_90;\n  uint local_8c;\n  int local_88;\n  void *local_80;\n  size_t local_7c;\n  uint *local_78;\n  uint local_74;\n  uint local_70;\n  uint *local_6c;\n  uint local_5c;\n  int local_58;\n  uint local_54;\n  int local_50;\n  ushort local_36;\n  uint local_34 [2];\n  int local_2c [7];\n  \n  iVar9 = FUN_0004ab89();\n  if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }\n  local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n  local_74 = (uint)lVar26;\n  local_88 = (int)((ulonglong)lVar27 >> 0x20);\n  local_8c = (uint)lVar27;\n  if (local_6c == (uint *)0x0) {\n    return 1;\n  }\n  if (iVar9 == 0) {\n    return 1;\n  }\n  pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);\n  printf(pcVar17,local_54);\n  puVar18 = (uint *)calloc(local_54,4);\n  if (puVar18 != (uint *)0x0) {\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }\nLAB_00034166:\n  dcgettext();\n  error();\n  return 0;\n}\n\n" (function_definition "undefined4 FUN_00032cd0(void)\n\n{\n  undefined4 *puVar1;\n  int iVar2;\n  double dVar3;\n  byte bVar4;\n  short sVar5;\n  uint uVar6;\n  ulonglong uVar7;\n  ulonglong uVar8;\n  int iVar9;\n  int iVar10;\n  size_t sVar11;\n  uint uVar12;\n  uint *puVar13;\n  uint *puVar14;\n  void *pvVar15;\n  uint uVar16;\n  char *pcVar17;\n  uint *puVar18;\n  undefined4 uVar19;\n  size_t sVar20;\n  uint uVar21;\n  uint uVar22;\n  char *__format;\n  int unaff_EBP;\n  uint uVar23;\n  uint uVar24;\n  bool bVar25;\n  longlong lVar26;\n  longlong lVar27;\n  longlong lVar28;\n  longlong lVar29;\n  undefined4 uVar30;\n  undefined *puVar31;\n  undefined4 uVar32;\n  uint *local_f4;\n  uint local_ec;\n  uint uStack_e8;\n  uint local_e0;\n  uint *local_dc;\n  uint local_d4;\n  void *local_cc;\n  uint *local_c4;\n  void *local_bc;\n  uint *local_b4;\n  uint local_b0;\n  void *local_90;\n  uint local_8c;\n  int local_88;\n  void *local_80;\n  size_t local_7c;\n  uint *local_78;\n  uint local_74;\n  uint local_70;\n  uint *local_6c;\n  uint local_5c;\n  int local_58;\n  uint local_54;\n  int local_50;\n  ushort local_36;\n  uint local_34 [2];\n  int local_2c [7];\n  \n  iVar9 = FUN_0004ab89();\n  if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }\n  local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n  local_74 = (uint)lVar26;\n  local_88 = (int)((ulonglong)lVar27 >> 0x20);\n  local_8c = (uint)lVar27;\n  if (local_6c == (uint *)0x0) {\n    return 1;\n  }\n  if (iVar9 == 0) {\n    return 1;\n  }\n  pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);\n  printf(pcVar17,local_54);\n  puVar18 = (uint *)calloc(local_54,4);\n  if (puVar18 != (uint *)0x0) {\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }\nLAB_00034166:\n  dcgettext();\n  error();\n  return 0;\n}" type_identifier (function_declarator "FUN_00032cd0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  undefined4 *puVar1;\n  int iVar2;\n  double dVar3;\n  byte bVar4;\n  short sVar5;\n  uint uVar6;\n  ulonglong uVar7;\n  ulonglong uVar8;\n  int iVar9;\n  int iVar10;\n  size_t sVar11;\n  uint uVar12;\n  uint *puVar13;\n  uint *puVar14;\n  void *pvVar15;\n  uint uVar16;\n  char *pcVar17;\n  uint *puVar18;\n  undefined4 uVar19;\n  size_t sVar20;\n  uint uVar21;\n  uint uVar22;\n  char *__format;\n  int unaff_EBP;\n  uint uVar23;\n  uint uVar24;\n  bool bVar25;\n  longlong lVar26;\n  longlong lVar27;\n  longlong lVar28;\n  longlong lVar29;\n  undefined4 uVar30;\n  undefined *puVar31;\n  undefined4 uVar32;\n  uint *local_f4;\n  uint local_ec;\n  uint uStack_e8;\n  uint local_e0;\n  uint *local_dc;\n  uint local_d4;\n  void *local_cc;\n  uint *local_c4;\n  void *local_bc;\n  uint *local_b4;\n  uint local_b0;\n  void *local_90;\n  uint local_8c;\n  int local_88;\n  void *local_80;\n  size_t local_7c;\n  uint *local_78;\n  uint local_74;\n  uint local_70;\n  uint *local_6c;\n  uint local_5c;\n  int local_58;\n  uint local_54;\n  int local_50;\n  ushort local_36;\n  uint local_34 [2];\n  int local_2c [7];\n  \n  iVar9 = FUN_0004ab89();\n  if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }\n  local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n  local_74 = (uint)lVar26;\n  local_88 = (int)((ulonglong)lVar27 >> 0x20);\n  local_8c = (uint)lVar27;\n  if (local_6c == (uint *)0x0) {\n    return 1;\n  }\n  if (iVar9 == 0) {\n    return 1;\n  }\n  pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);\n  printf(pcVar17,local_54);\n  puVar18 = (uint *)calloc(local_54,4);\n  if (puVar18 != (uint *)0x0) {\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }\nLAB_00034166:\n  dcgettext();\n  error();\n  return 0;\n}" { (declaration "undefined4 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "double dVar3;" primitive_type identifier ;) (declaration "byte bVar4;" type_identifier identifier ;) (declaration "short sVar5;" (sized_type_specifier "short" short) identifier ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "ulonglong uVar7;" type_identifier identifier ;) (declaration "ulonglong uVar8;" type_identifier identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "size_t sVar11;" primitive_type identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "uint *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "uint *puVar14;" type_identifier (pointer_declarator "*puVar14" * identifier) ;) (declaration "void *pvVar15;" primitive_type (pointer_declarator "*pvVar15" * identifier) ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "char *pcVar17;" primitive_type (pointer_declarator "*pcVar17" * identifier) ;) (declaration "uint *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "undefined4 uVar19;" type_identifier identifier ;) (declaration "size_t sVar20;" primitive_type identifier ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "char *__format;" primitive_type (pointer_declarator "*__format" * identifier) ;) (declaration "int unaff_EBP;" primitive_type identifier ;) (declaration "uint uVar23;" type_identifier identifier ;) (declaration "uint uVar24;" type_identifier identifier ;) (declaration "bool bVar25;" primitive_type identifier ;) (declaration "longlong lVar26;" type_identifier identifier ;) (declaration "longlong lVar27;" type_identifier identifier ;) (declaration "longlong lVar28;" type_identifier identifier ;) (declaration "longlong lVar29;" type_identifier identifier ;) (declaration "undefined4 uVar30;" type_identifier identifier ;) (declaration "undefined *puVar31;" type_identifier (pointer_declarator "*puVar31" * identifier) ;) (declaration "undefined4 uVar32;" type_identifier identifier ;) (declaration "uint *local_f4;" type_identifier (pointer_declarator "*local_f4" * identifier) ;) (declaration "uint local_ec;" type_identifier identifier ;) (declaration "uint uStack_e8;" type_identifier identifier ;) (declaration "uint local_e0;" type_identifier identifier ;) (declaration "uint *local_dc;" type_identifier (pointer_declarator "*local_dc" * identifier) ;) (declaration "uint local_d4;" type_identifier identifier ;) (declaration "void *local_cc;" primitive_type (pointer_declarator "*local_cc" * identifier) ;) (declaration "uint *local_c4;" type_identifier (pointer_declarator "*local_c4" * identifier) ;) (declaration "void *local_bc;" primitive_type (pointer_declarator "*local_bc" * identifier) ;) (declaration "uint *local_b4;" type_identifier (pointer_declarator "*local_b4" * identifier) ;) (declaration "uint local_b0;" type_identifier identifier ;) (declaration "void *local_90;" primitive_type (pointer_declarator "*local_90" * identifier) ;) (declaration "uint local_8c;" type_identifier identifier ;) (declaration "int local_88;" primitive_type identifier ;) (declaration "void *local_80;" primitive_type (pointer_declarator "*local_80" * identifier) ;) (declaration "size_t local_7c;" primitive_type identifier ;) (declaration "uint *local_78;" type_identifier (pointer_declarator "*local_78" * identifier) ;) (declaration "uint local_74;" type_identifier identifier ;) (declaration "uint local_70;" type_identifier identifier ;) (declaration "uint *local_6c;" type_identifier (pointer_declarator "*local_6c" * identifier) ;) (declaration "uint local_5c;" type_identifier identifier ;) (declaration "int local_58;" primitive_type identifier ;) (declaration "uint local_54;" type_identifier identifier ;) (declaration "int local_50;" primitive_type identifier ;) (declaration "ushort local_36;" type_identifier identifier ;) (declaration "uint local_34 [2];" type_identifier (array_declarator "local_34 [2]" identifier [ number_literal ]) ;) (declaration "int local_2c [7];" primitive_type (array_declarator "local_2c [7]" identifier [ number_literal ]) ;) (expression_statement "iVar9 = FUN_0004ab89();" (assignment_expression "iVar9 = FUN_0004ab89()" identifier = (call_expression "FUN_0004ab89()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) && (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal)) )) (compound_statement "{\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }" { (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (pointer_expression "*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;" if (parenthesized_expression "(*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)" ( (binary_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0" (binary_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0" (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" * (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (binary_expression "(int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0" (cast_expression "(int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) != number_literal)) )) (goto_statement "goto LAB_00033f90;" goto statement_identifier ;)) (expression_statement "lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);" (assignment_expression "lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" identifier = (pointer_expression "*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }" if (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0)" ( (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (binary_expression "(int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (cast_expression "(int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) != number_literal)) )) (compound_statement "{\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }" { (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar29 = lVar28;" (assignment_expression "lVar29 = lVar28" identifier = identifier) ;) (goto_statement "goto LAB_00032d84;" goto statement_identifier ;) })) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar28 = lVar29;" (assignment_expression "lVar28 = lVar29" identifier = identifier) ;) (labeled_statement "LAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" statement_identifier : (expression_statement "puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) ;)) (expression_statement "uVar21 = *puVar18;" (assignment_expression "uVar21 = *puVar18" identifier = (pointer_expression "*puVar18" * identifier)) ;) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" identifier = (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" * (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "lVar26 = *(longlong *)puVar18;" (assignment_expression "lVar26 = *(longlong *)puVar18" identifier = (pointer_expression "*(longlong *)puVar18" * (cast_expression "(longlong *)puVar18" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "lVar27 = *(longlong *)puVar18;" (assignment_expression "lVar27 = *(longlong *)puVar18" identifier = (pointer_expression "*(longlong *)puVar18" * (cast_expression "(longlong *)puVar18" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }" if (parenthesized_expression "(uVar21 == 0 && iVar10 == 0)" ( (binary_expression "uVar21 == 0 && iVar10 == 0" (binary_expression "uVar21 == 0" identifier == number_literal) && (binary_expression "iVar10 == 0" identifier == number_literal)) )) (compound_statement "{\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }" { (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_54 = uVar21;" (assignment_expression "local_54 = uVar21" identifier = identifier) ;) (expression_statement "local_50 = iVar10;" (assignment_expression "local_50 = iVar10" identifier = identifier) ;) (goto_statement "goto LAB_0003378f;" goto statement_identifier ;) })) (labeled_statement "LAB_000332bc:\n    lVar27 = 0;" statement_identifier : (expression_statement "lVar27 = 0;" (assignment_expression "lVar27 = 0" identifier = number_literal) ;)) (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000333c0:\n    local_7c = (size_t)lVar28;" statement_identifier : (expression_statement "local_7c = (size_t)lVar28;" (assignment_expression "local_7c = (size_t)lVar28" identifier = (cast_expression "(size_t)lVar28" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;)) (expression_statement "uVar23 = (uint)((ulonglong)lVar29 >> 0x20);" (assignment_expression "uVar23 = (uint)((ulonglong)lVar29 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar29 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_e0 = (uint)lVar29;" (assignment_expression "local_e0 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_70 = (uint)((ulonglong)lVar26 >> 0x20);" (assignment_expression "local_70 = (uint)((ulonglong)lVar26 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar26 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar26 >> 0x20)" ( (binary_expression "(ulonglong)lVar26 >> 0x20" (cast_expression "(ulonglong)lVar26" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_74 = (uint)lVar26;" (assignment_expression "local_74 = (uint)lVar26" identifier = (cast_expression "(uint)lVar26" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_88 = (int)((ulonglong)lVar27 >> 0x20);" (assignment_expression "local_88 = (int)((ulonglong)lVar27 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar27 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar27 >> 0x20)" ( (binary_expression "(ulonglong)lVar27 >> 0x20" (cast_expression "(ulonglong)lVar27" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_8c = (uint)lVar27;" (assignment_expression "local_8c = (uint)lVar27" identifier = (cast_expression "(uint)lVar27" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;" if (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_0003378f;" goto statement_identifier ;)) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }" { (if_statement "if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }" if (parenthesized_expression "((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0))" ( (binary_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)" (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0)" ( (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 0xe" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) || (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 2" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) ))) )) (compound_statement "{\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }" { (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_00033a30;" goto statement_identifier ;)) (goto_statement "goto LAB_000337b9;" goto statement_identifier ;) })) (if_statement "if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }" if (parenthesized_expression "(iVar10 != 0 || uVar21 != 0)" ( (binary_expression "iVar10 != 0 || uVar21 != 0" (binary_expression "iVar10 != 0" identifier != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) )) (compound_statement "{\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }" { (expression_statement "iVar9 = unaff_EBP + 0x48efc;" (assignment_expression "iVar9 = unaff_EBP + 0x48efc" identifier = (binary_expression "unaff_EBP + 0x48efc" identifier + number_literal)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,iVar9,uVar32);" (call_expression "printf(pcVar17,iVar9,uVar32)" identifier (argument_list "(pcVar17,iVar9,uVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" if (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" ( (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" * (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" " string_content ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" { (expression_statement "puVar31 = &UNK_00050c3e + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c3e + unaff_EBP" identifier = (binary_expression "&UNK_00050c3e + unaff_EBP" (pointer_expression "&UNK_00050c3e" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" else (compound_statement "{\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" { (expression_statement "puVar31 = &UNK_00050c02 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c02 + unaff_EBP" identifier = (binary_expression "&UNK_00050c02 + unaff_EBP" (pointer_expression "&UNK_00050c02" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) }))) (expression_statement "pvVar15 = (void *)FUN_0005da70();" (assignment_expression "pvVar15 = (void *)FUN_0005da70()" identifier = (cast_expression "(void *)FUN_0005da70()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0005da70()" identifier (argument_list "()" ( ))))) ;) (expression_statement "memset(pvVar15,0,local_e0);" (call_expression "memset(pvVar15,0,local_e0)" identifier (argument_list "(pvVar15,0,local_e0)" ( identifier , number_literal , identifier ))) ;) (if_statement "if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }" if (parenthesized_expression "(lVar28 != 0)" ( (binary_expression "lVar28 != 0" identifier != number_literal) )) (compound_statement "{\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }" { (expression_statement "local_ec = 0;" (assignment_expression "local_ec = 0" identifier = number_literal) ;) (do_statement "do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);" do (compound_statement "{\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          }" { (expression_statement "uVar21 = local_78[local_ec * 2];" (assignment_expression "uVar21 = local_78[local_ec * 2]" identifier = (subscript_expression "local_78[local_ec * 2]" identifier [ (binary_expression "local_ec * 2" identifier * number_literal) ])) ;) (expression_statement "uVar12 = local_78[local_ec * 2 + 1];" (assignment_expression "uVar12 = local_78[local_ec * 2 + 1]" identifier = (subscript_expression "local_78[local_ec * 2 + 1]" identifier [ (binary_expression "local_ec * 2 + 1" (binary_expression "local_ec * 2" identifier * number_literal) + number_literal) ])) ;) (if_statement "if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }" if (parenthesized_expression "(uVar12 != 0 || uVar21 != 0)" ( (binary_expression "uVar12 != 0 || uVar21 != 0" (binary_expression "uVar12 != 0" identifier != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) )) (compound_statement "{\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }" { (do_statement "do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);" do (compound_statement "{\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              }" { (expression_statement "FUN_00032a90();" (call_expression "FUN_00032a90()" identifier (argument_list "()" ( ))) ;) (if_statement "if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }" if (parenthesized_expression "((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0'))" ( (binary_expression "(uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')" (parenthesized_expression "(uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23)" ( (binary_expression "uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23" (binary_expression "uVar23 <= uVar12" identifier <= identifier) && (binary_expression "(uint)(uVar21 < local_e0) <= uVar12 - uVar23" (call_expression "(uint)(uVar21 < local_e0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar21 < local_e0)" ( (binary_expression "uVar21 < local_e0" identifier < identifier) ))) <= (binary_expression "uVar12 - uVar23" identifier - identifier))) )) || (parenthesized_expression "(*(char *)((int)pvVar15 + uVar21) != '\0')" ( (binary_expression "*(char *)((int)pvVar15 + uVar21) != '\0'" (pointer_expression "*(char *)((int)pvVar15 + uVar21)" * (cast_expression "(char *)((int)pvVar15 + uVar21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar15 + uVar21)" ( (binary_expression "(int)pvVar15 + uVar21" (cast_expression "(int)pvVar15" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                  dcgettext();\n                  error();\n                  break;\n                }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (break_statement "break;" break ;) })) (expression_statement "*(char *)((int)pvVar15 + uVar21) = '\x01';" (assignment_expression "*(char *)((int)pvVar15 + uVar21) = '\x01'" (pointer_expression "*(char *)((int)pvVar15 + uVar21)" * (cast_expression "(char *)((int)pvVar15 + uVar21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar15 + uVar21)" ( (binary_expression "(int)pvVar15 + uVar21" (cast_expression "(int)pvVar15" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);" (assignment_expression "uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_cc + uVar21 * 8 + 4)" * (cast_expression "(uint *)((int)local_cc + uVar21 * 8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_cc + uVar21 * 8 + 4)" ( (binary_expression "(int)local_cc + uVar21 * 8 + 4" (binary_expression "(int)local_cc + uVar21 * 8" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar21 * 8" identifier * number_literal)) + number_literal) ))))) ;) (expression_statement "uVar21 = *(uint *)((int)local_cc + uVar21 * 8);" (assignment_expression "uVar21 = *(uint *)((int)local_cc + uVar21 * 8)" identifier = (pointer_expression "*(uint *)((int)local_cc + uVar21 * 8)" * (cast_expression "(uint *)((int)local_cc + uVar21 * 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_cc + uVar21 * 8)" ( (binary_expression "(int)local_cc + uVar21 * 8" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar21 * 8" identifier * number_literal)) ))))) ;) }) while (parenthesized_expression "(uVar12 != 0 || uVar21 != 0)" ( (binary_expression "uVar12 != 0 || uVar21 != 0" (binary_expression "uVar12 != 0" identifier != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) )) ;) })) (expression_statement "local_ec = local_ec + 1;" (assignment_expression "local_ec = local_ec + 1" identifier = (binary_expression "local_ec + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_7c != local_ec)" ( (binary_expression "local_7c != local_ec" identifier != identifier) )) ;) })) (expression_statement "free(pvVar15);" (call_expression "free(pvVar15)" identifier (argument_list "(pvVar15)" ( identifier ))) ;) })) (if_statement "if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }" if (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0)" ( (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal)) )) (compound_statement "{\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }" { (expression_statement "puVar31 = &UNK_00050c82 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c82 + unaff_EBP" identifier = (binary_expression "&UNK_00050c82 + unaff_EBP" (pointer_expression "&UNK_00050c82" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" if (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" ( (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" * (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" " string_content ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" { (expression_statement "puVar31 = &UNK_00050c3e + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c3e + unaff_EBP" identifier = (binary_expression "&UNK_00050c3e + unaff_EBP" (pointer_expression "&UNK_00050c3e" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" else (compound_statement "{\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" { (expression_statement "puVar31 = &UNK_00050c02 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c02 + unaff_EBP" identifier = (binary_expression "&UNK_00050c02 + unaff_EBP" (pointer_expression "&UNK_00050c02" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) }))) (if_statement "if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }" if (parenthesized_expression "(local_50 != 0 || local_54 != 0)" ( (binary_expression "local_50 != 0 || local_54 != 0" (binary_expression "local_50 != 0" identifier != number_literal) || (binary_expression "local_54 != 0" identifier != number_literal)) )) (compound_statement "{\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }" { (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (do_statement "do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);" do (compound_statement "{\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          }" { (expression_statement "uVar23 = local_6c[uVar21 * 2];" (assignment_expression "uVar23 = local_6c[uVar21 * 2]" identifier = (subscript_expression "local_6c[uVar21 * 2]" identifier [ (binary_expression "uVar21 * 2" identifier * number_literal) ])) ;) (if_statement "if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }" if (parenthesized_expression "(local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0)" ( (binary_expression "local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0" (binary_expression "local_6c[uVar21 * 2 + 1] != 0" (subscript_expression "local_6c[uVar21 * 2 + 1]" identifier [ (binary_expression "uVar21 * 2 + 1" (binary_expression "uVar21 * 2" identifier * number_literal) + number_literal) ]) != number_literal) || (binary_expression "uVar23 != 0" identifier != number_literal)) )) (compound_statement "{\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }" { (expression_statement "uVar12 = uVar23 - local_8c;" (assignment_expression "uVar12 = uVar23 - local_8c" identifier = (binary_expression "uVar23 - local_8c" identifier - identifier)) ;) (expression_statement "uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);" (assignment_expression "uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c)" identifier = (binary_expression "(local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c)" (parenthesized_expression "(local_6c[uVar21 * 2 + 1] - local_88)" ( (binary_expression "local_6c[uVar21 * 2 + 1] - local_88" (subscript_expression "local_6c[uVar21 * 2 + 1]" identifier [ (binary_expression "uVar21 * 2 + 1" (binary_expression "uVar21 * 2" identifier * number_literal) + number_literal) ]) - identifier) )) - (call_expression "(uint)(uVar23 < local_8c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 < local_8c)" ( (binary_expression "uVar23 < local_8c" identifier < identifier) ))))) ;) (do_statement "do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);" do (compound_statement "{\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              }" { (expression_statement "FUN_00032a90();" (call_expression "FUN_00032a90()" identifier (argument_list "()" ( ))) ;) (if_statement "if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;" if (parenthesized_expression "(local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70)" ( (binary_expression "local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70" (binary_expression "local_70 <= uVar23" identifier <= identifier) && (binary_expression "(uint)(uVar12 < local_74) <= uVar23 - local_70" (call_expression "(uint)(uVar12 < local_74)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar12 < local_74)" ( (binary_expression "uVar12 < local_74" identifier < identifier) ))) <= (binary_expression "uVar23 - local_70" identifier - identifier))) )) (break_statement "break;" break ;)) (expression_statement "bVar25 = 0xfffffffe < uVar12;" (assignment_expression "bVar25 = 0xfffffffe < uVar12" identifier = (binary_expression "0xfffffffe < uVar12" number_literal < identifier)) ;) (expression_statement "uVar12 = uVar12 + 1;" (assignment_expression "uVar12 = uVar12 + 1" identifier = (binary_expression "uVar12 + 1" identifier + number_literal)) ;) (expression_statement "uVar23 = uVar23 + bVar25;" (assignment_expression "uVar23 = uVar23 + bVar25" identifier = (binary_expression "uVar23 + bVar25" identifier + identifier)) ;) }) while (parenthesized_expression "((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0)" ( (binary_expression "(*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0" (parenthesized_expression "(*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1)" ( (binary_expression "*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1" (pointer_expression "*(byte *)((int)local_90 + uVar12 * 8 + -8)" * (cast_expression "(byte *)((int)local_90 + uVar12 * 8 + -8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_90 + uVar12 * 8 + -8)" ( (binary_expression "(int)local_90 + uVar12 * 8 + -8" (binary_expression "(int)local_90 + uVar12 * 8" (cast_expression "(int)local_90" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar12 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) ;) })) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" identifier = (binary_expression "uVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_54 != uVar21)" ( (binary_expression "local_54 != uVar21" identifier != identifier) )) ;) })) })) (goto_statement "goto LAB_00033418;" goto statement_identifier ;) })) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_000341b6;" goto statement_identifier ;)) (labeled_statement "LAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);" statement_identifier : (expression_statement "local_ec = *(int *)(iVar9 + 0x5c);" (assignment_expression "local_ec = *(int *)(iVar9 + 0x5c)" identifier = (pointer_expression "*(int *)(iVar9 + 0x5c)" * (cast_expression "(int *)(iVar9 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x5c)" ( (binary_expression "iVar9 + 0x5c" identifier + number_literal) ))))) ;)) (if_statement "if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }" if (parenthesized_expression "(local_ec != 0)" ( (binary_expression "local_ec != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }" { (labeled_statement "LAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }" statement_identifier : (if_statement "if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }" if (parenthesized_expression "(*(int *)(iVar9 + 0x54) != 0)" ( (binary_expression "*(int *)(iVar9 + 0x54) != 0" (pointer_expression "*(int *)(iVar9 + 0x54)" * (cast_expression "(int *)(iVar9 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x54)" ( (binary_expression "iVar9 + 0x54" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }" { (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (expression_statement "puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);" (assignment_expression "puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" identifier = (pointer_expression "*(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" * (cast_expression "(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" ( (binary_expression "" Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6" (binary_expression "" Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP" (string_literal "" Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (do_statement "do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));" do (compound_statement "{\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        }" { (expression_statement "iVar10 = *(int *)(local_ec + 4);" (assignment_expression "iVar10 = *(int *)(local_ec + 4)" identifier = (pointer_expression "*(int *)(local_ec + 4)" * (cast_expression "(int *)(local_ec + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 4)" ( (binary_expression "local_ec + 4" identifier + number_literal) ))))) ;) (if_statement "if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }" if (parenthesized_expression "(((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2))))" ( (binary_expression "((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))" (parenthesized_expression "((iVar10 == 2) || (iVar10 == 0xb))" ( (binary_expression "(iVar10 == 2) || (iVar10 == 0xb)" (parenthesized_expression "(iVar10 == 2)" ( (binary_expression "iVar10 == 2" identifier == number_literal) )) || (parenthesized_expression "(iVar10 == 0xb)" ( (binary_expression "iVar10 == 0xb" identifier == number_literal) ))) )) && (parenthesized_expression "((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))" ( (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2))" ( (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)" (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (parenthesized_expression "(iVar10 != 2)" ( (binary_expression "iVar10 != 2" identifier != number_literal) ))) )) ))) )) (compound_statement "{\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }" { (expression_statement "iVar10 = *(int *)(local_ec + 0x38);" (assignment_expression "iVar10 = *(int *)(local_ec + 0x38)" identifier = (pointer_expression "*(int *)(local_ec + 0x38)" * (cast_expression "(int *)(local_ec + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 0x38)" ( (binary_expression "local_ec + 0x38" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" if (parenthesized_expression "(*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0)" ( (binary_expression "*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0" (binary_expression "*(int *)(local_ec + 0x3c) == 0" (pointer_expression "*(int *)(local_ec + 0x3c)" * (cast_expression "(int *)(local_ec + 0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 0x3c)" ( (binary_expression "local_ec + 0x3c" identifier + number_literal) )))) == number_literal) && (binary_expression "iVar10 == 0" identifier == number_literal)) )) (compound_statement "{\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }" { (expression_statement "uVar32 = FUN_00022190();" (assignment_expression "uVar32 = FUN_00022190()" identifier = (call_expression "FUN_00022190()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar19 = 5;" (assignment_expression "uVar19 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,uVar32,uVar19);" (call_expression "printf(pcVar17,uVar32,uVar19)" identifier (argument_list "(pcVar17,uVar32,uVar19)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" else (compound_statement "{\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" { (expression_statement "uVar32 = *(undefined4 *)(local_ec + 0x24);" (assignment_expression "uVar32 = *(undefined4 *)(local_ec + 0x24)" identifier = (pointer_expression "*(undefined4 *)(local_ec + 0x24)" * (cast_expression "(undefined4 *)(local_ec + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 0x24)" ( (binary_expression "local_ec + 0x24" identifier + number_literal) ))))) ;) (expression_statement "uVar21 = FUN_0006b250();" (assignment_expression "uVar21 = FUN_0006b250()" identifier = (call_expression "FUN_0006b250()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_34[0] = uVar21;" (assignment_expression "local_34[0] = uVar21" (subscript_expression "local_34[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar19 = FUN_00022190();" (assignment_expression "uVar19 = FUN_00022190()" identifier = (call_expression "FUN_00022190()" identifier (argument_list "()" ( )))) ;) (expression_statement "pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);" (assignment_expression "pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" identifier = (cast_expression "(char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" identifier (argument_list "(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" ( number_literal , (binary_expression "&UNK_00050d0a + unaff_EBP" (pointer_expression "&UNK_00050d0a" & identifier) + identifier) , (binary_expression "&UNK_00050cde + unaff_EBP" (pointer_expression "&UNK_00050cde" & identifier) + identifier) , (subscript_expression "local_34[0]" identifier [ number_literal ]) , number_literal , identifier , identifier ))))) ;) (expression_statement "printf(pcVar17,uVar19,uVar21);" (call_expression "printf(pcVar17,uVar19,uVar21)" identifier (argument_list "(pcVar17,uVar19,uVar21)" ( identifier , identifier , identifier ))) ;) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" if (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" ( (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" * (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" " string_content ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" { (expression_statement "puVar31 = &UNK_00050d6e + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050d6e + unaff_EBP" identifier = (binary_expression "&UNK_00050d6e + unaff_EBP" (pointer_expression "&UNK_00050d6e" & identifier) + identifier)) ;) (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar21);" (call_expression "printf(pcVar17,puVar31,uVar21)" identifier (argument_list "(pcVar17,puVar31,uVar21)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" else (compound_statement "{\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" { (expression_statement "puVar31 = &UNK_00050d32 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050d32 + unaff_EBP" identifier = (binary_expression "&UNK_00050d32 + unaff_EBP" (pointer_expression "&UNK_00050d32" & identifier) + identifier)) ;) (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar21);" (call_expression "printf(pcVar17,puVar31,uVar21)" identifier (argument_list "(pcVar17,puVar31,uVar21)" ( identifier , identifier , identifier ))) ;) }))) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }" if (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" ( (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" * (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" ( (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" " string_content ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n                local_80 = (void *)FUN_00022830();\n              }" { (expression_statement "local_80 = (void *)FUN_00022830();" (assignment_expression "local_80 = (void *)FUN_00022830()" identifier = (cast_expression "(void *)FUN_00022830()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00022830()" identifier (argument_list "()" ( ))))) ;) }) (else_clause "else {\n                local_80 = (void *)FUN_000222e0();\n              }" else (compound_statement "{\n                local_80 = (void *)FUN_000222e0();\n              }" { (expression_statement "local_80 = (void *)FUN_000222e0();" (assignment_expression "local_80 = (void *)FUN_000222e0()" identifier = (cast_expression "(void *)FUN_000222e0()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000222e0()" identifier (argument_list "()" ( ))))) ;) }))) (if_statement "if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }" if (parenthesized_expression "(local_80 != (void *)0x0)" ( (binary_expression "local_80 != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }" { (expression_statement "uVar23 = *(uint *)(local_ec + 0x28);" (assignment_expression "uVar23 = *(uint *)(local_ec + 0x28)" identifier = (pointer_expression "*(uint *)(local_ec + 0x28)" * (cast_expression "(uint *)(local_ec + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 0x28)" ( (binary_expression "local_ec + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }" if (parenthesized_expression "(uVar23 == *(uint *)(iVar9 + 0x58))" ( (binary_expression "uVar23 == *(uint *)(iVar9 + 0x58)" identifier == (pointer_expression "*(uint *)(iVar9 + 0x58)" * (cast_expression "(uint *)(iVar9 + 0x58)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x58)" ( (binary_expression "iVar9 + 0x58" identifier + number_literal) ))))) )) (compound_statement "{\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }" { (expression_statement "local_bc = *(void **)(iVar9 + 100);" (assignment_expression "local_bc = *(void **)(iVar9 + 100)" identifier = (pointer_expression "*(void **)(iVar9 + 100)" * (cast_expression "(void **)(iVar9 + 100)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 100)" ( (binary_expression "iVar9 + 100" identifier + number_literal) ))))) ;) (expression_statement "local_d4 = *(uint *)(iVar9 + 0x68);" (assignment_expression "local_d4 = *(uint *)(iVar9 + 0x68)" identifier = (pointer_expression "*(uint *)(iVar9 + 0x68)" * (cast_expression "(uint *)(iVar9 + 0x68)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x68)" ( (binary_expression "iVar9 + 0x68" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }" else (compound_statement "{\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }" { (expression_statement "local_d4 = 0;" (assignment_expression "local_d4 = 0" identifier = number_literal) ;) (expression_statement "local_bc = (void *)0x0;" (assignment_expression "local_bc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }" if (parenthesized_expression "(uVar23 < *(uint *)(iVar9 + 0x54))" ( (binary_expression "uVar23 < *(uint *)(iVar9 + 0x54)" identifier < (pointer_expression "*(uint *)(iVar9 + 0x54)" * (cast_expression "(uint *)(iVar9 + 0x54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x54)" ( (binary_expression "iVar9 + 0x54" identifier + number_literal) ))))) )) (compound_statement "{\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }" { (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" identifier = number_literal) ;) (expression_statement "iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;" (assignment_expression "iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48" identifier = (binary_expression "*(int *)(iVar9 + 0x5c) + uVar23 * 0x48" (pointer_expression "*(int *)(iVar9 + 0x5c)" * (cast_expression "(int *)(iVar9 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x5c)" ( (binary_expression "iVar9 + 0x5c" identifier + number_literal) )))) + (binary_expression "uVar23 * 0x48" identifier * number_literal))) ;) (expression_statement "iVar10 = unaff_EBP + 0x45491;" (assignment_expression "iVar10 = unaff_EBP + 0x45491" identifier = (binary_expression "unaff_EBP + 0x45491" identifier + number_literal)) ;) (expression_statement "uVar32 = dcgettext();" (assignment_expression "uVar32 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);" (assignment_expression "local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" identifier = (cast_expression "(void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" identifier (argument_list "(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" ( number_literal , number_literal , (pointer_expression "*(undefined4 *)(iVar2 + 0x20)" * (cast_expression "(undefined4 *)(iVar2 + 0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(iVar2 + 0x24)" * (cast_expression "(undefined4 *)(iVar2 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x24)" ( (binary_expression "iVar2 + 0x24" identifier + number_literal) )))) , identifier , identifier , identifier ))))) ;) (if_statement "if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }" if (parenthesized_expression "(local_bc != (void *)0x0)" ( (binary_expression "local_bc != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }" { (expression_statement "local_d4 = *(uint *)(iVar2 + 0x20);" (assignment_expression "local_d4 = *(uint *)(iVar2 + 0x20)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x20)" * (cast_expression "(uint *)(iVar2 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) ))))) ;) })) })) }))) (if_statement "if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }" if (parenthesized_expression "(local_34[0] != 0)" ( (binary_expression "local_34[0] != 0" (subscript_expression "local_34[0]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }" { (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;) (expression_statement "puVar18 = (uint *)((int)local_80 + 0x10);" (assignment_expression "puVar18 = (uint *)((int)local_80 + 0x10)" identifier = (cast_expression "(uint *)((int)local_80 + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_80 + 0x10)" ( (binary_expression "(int)local_80 + 0x10" (cast_expression "(int)local_80" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pcVar17 = (char *)(unaff_EBP + 0x48ecf);" (assignment_expression "pcVar17 = (char *)(unaff_EBP + 0x48ecf)" identifier = (cast_expression "(char *)(unaff_EBP + 0x48ecf)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48ecf)" ( (binary_expression "unaff_EBP + 0x48ecf" identifier + number_literal) )))) ;) (do_statement "do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);" do (compound_statement "{\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  }" { (expression_statement "printf(&UNK_00048f32 + unaff_EBP,uVar23);" (call_expression "printf(&UNK_00048f32 + unaff_EBP,uVar23)" identifier (argument_list "(&UNK_00048f32 + unaff_EBP,uVar23)" ( (binary_expression "&UNK_00048f32 + unaff_EBP" (pointer_expression "&UNK_00048f32" & identifier) + identifier) , identifier ))) ;) (expression_statement "FUN_0001e910();" (call_expression "FUN_0001e910()" identifier (argument_list "()" ( ))) ;) (expression_statement "putc(0x20,(FILE *)*puVar1);" (call_expression "putc(0x20,(FILE *)*puVar1)" identifier (argument_list "(0x20,(FILE *)*puVar1)" ( number_literal , (cast_expression "(FILE *)*puVar1" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier)) ))) ;) (expression_statement "FUN_0001e910();" (call_expression "FUN_0001e910()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar32 = FUN_00023ff0();" (assignment_expression "uVar32 = FUN_00023ff0()" identifier = (call_expression "FUN_00023ff0()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(pcVar17,uVar32);" (call_expression "printf(pcVar17,uVar32)" identifier (argument_list "(pcVar17,uVar32)" ( identifier , identifier ))) ;) (expression_statement "uVar32 = FUN_00025a40();" (assignment_expression "uVar32 = FUN_00025a40()" identifier = (call_expression "FUN_00025a40()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf((char *)(unaff_EBP + 0x48ed5),uVar32);" (call_expression "printf((char *)(unaff_EBP + 0x48ed5),uVar32)" identifier (argument_list "((char *)(unaff_EBP + 0x48ed5),uVar32)" ( (cast_expression "(char *)(unaff_EBP + 0x48ed5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48ed5)" ( (binary_expression "unaff_EBP + 0x48ed5" identifier + number_literal) ))) , identifier ))) ;) (if_statement "if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }" if (parenthesized_expression "(*(char *)(iVar9 + 0x17) == '\x06')" ( (binary_expression "*(char *)(iVar9 + 0x17) == '\x06'" (pointer_expression "*(char *)(iVar9 + 0x17)" * (cast_expression "(char *)(iVar9 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x17)" ( (binary_expression "iVar9 + 0x17" identifier + number_literal) )))) == (char_literal "'\x06'" ' escape_sequence ')) )) (compound_statement "{\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }" { (expression_statement "uVar32 = FUN_00023de0();" (assignment_expression "uVar32 = FUN_00023de0()" identifier = (call_expression "FUN_00023de0()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(pcVar17,uVar32);" (call_expression "printf(pcVar17,uVar32)" identifier (argument_list "(pcVar17,uVar32)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }" else (compound_statement "{\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }" { (expression_statement "bVar4 = *(byte *)((int)puVar18 + 5);" (assignment_expression "bVar4 = *(byte *)((int)puVar18 + 5)" identifier = (pointer_expression "*(byte *)((int)puVar18 + 5)" * (cast_expression "(byte *)((int)puVar18 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar18 + 5)" ( (binary_expression "(int)puVar18 + 5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "uVar32 = FUN_00023d60();" (assignment_expression "uVar32 = FUN_00023d60()" identifier = (call_expression "FUN_00023d60()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(pcVar17,uVar32);" (call_expression "printf(pcVar17,uVar32)" identifier (argument_list "(pcVar17,uVar32)" ( identifier , identifier ))) ;) (if_statement "if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }" if (parenthesized_expression "(*(byte *)((int)puVar18 + 5) != (bVar4 & 3))" ( (binary_expression "*(byte *)((int)puVar18 + 5) != (bVar4 & 3)" (pointer_expression "*(byte *)((int)puVar18 + 5)" * (cast_expression "(byte *)((int)puVar18 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar18 + 5)" ( (binary_expression "(int)puVar18 + 5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (parenthesized_expression "(bVar4 & 3)" ( (binary_expression "bVar4 & 3" identifier & number_literal) ))) )) (compound_statement "{\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }" { (expression_statement "uVar32 = FUN_00032810();" (assignment_expression "uVar32 = FUN_00032810()" identifier = (call_expression "FUN_00032810()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf((char *)(unaff_EBP + 0x48edb),uVar32);" (call_expression "printf((char *)(unaff_EBP + 0x48edb),uVar32)" identifier (argument_list "((char *)(unaff_EBP + 0x48edb),uVar32)" ( (cast_expression "(char *)(unaff_EBP + 0x48edb)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48edb)" ( (binary_expression "unaff_EBP + 0x48edb" identifier + number_literal) ))) , identifier ))) ;) })) }))) (expression_statement "uVar32 = FUN_00023e70();" (assignment_expression "uVar32 = FUN_00023e70()" identifier = (call_expression "FUN_00023e70()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(&UNK_00048f38 + unaff_EBP,uVar32);" (call_expression "printf(&UNK_00048f38 + unaff_EBP,uVar32)" identifier (argument_list "(&UNK_00048f38 + unaff_EBP,uVar32)" ( (binary_expression "&UNK_00048f38 + unaff_EBP" (pointer_expression "&UNK_00048f38" & identifier) + identifier) , identifier ))) ;) (if_statement "if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }" if (parenthesized_expression "(local_d4 <= *puVar18)" ( (binary_expression "local_d4 <= *puVar18" identifier <= (pointer_expression "*puVar18" * identifier)) )) (compound_statement "{\n                      uVar21 = 5;\n                      dcgettext();\n                    }" { (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" identifier = number_literal) ;) (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_0001fd20();" (call_expression "FUN_0001fd20()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);" (assignment_expression "iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21)" identifier = (call_expression "FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21)" identifier (argument_list "(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21)" ( identifier , identifier , identifier , (binary_expression "puVar18 + 2" identifier + number_literal) , identifier , (pointer_expression "&local_36" & identifier) , identifier )))) ;) (if_statement "if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }" { (if_statement "if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }" if (parenthesized_expression "(local_2c[0] == 0)" ( (binary_expression "local_2c[0] == 0" (subscript_expression "local_2c[0]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }" { (expression_statement "uVar21 = (uint)local_36;" (assignment_expression "uVar21 = (uint)local_36" identifier = (cast_expression "(uint)local_36" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "printf((char *)(unaff_EBP + 0x48f3e),iVar10);" (call_expression "printf((char *)(unaff_EBP + 0x48f3e),iVar10)" identifier (argument_list "((char *)(unaff_EBP + 0x48f3e),iVar10)" ( (cast_expression "(char *)(unaff_EBP + 0x48f3e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48f3e)" ( (binary_expression "unaff_EBP + 0x48f3e" identifier + number_literal) ))) , identifier ))) ;) }) (else_clause "else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }" else (compound_statement "{\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }" { (expression_statement "__format = (char *)(unaff_EBP + 0x48d63);" (assignment_expression "__format = (char *)(unaff_EBP + 0x48d63)" identifier = (cast_expression "(char *)(unaff_EBP + 0x48d63)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48d63)" ( (binary_expression "unaff_EBP + 0x48d63" identifier + number_literal) )))) ;) (if_statement "if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }" if (parenthesized_expression "(local_2c[0] != 1)" ( (binary_expression "local_2c[0] != 1" (subscript_expression "local_2c[0]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }" { (expression_statement "__format = (char *)(unaff_EBP + 0x48d62);" (assignment_expression "__format = (char *)(unaff_EBP + 0x48d62)" identifier = (cast_expression "(char *)(unaff_EBP + 0x48d62)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48d62)" ( (binary_expression "unaff_EBP + 0x48d62" identifier + number_literal) )))) ;) })) (expression_statement "printf(__format,iVar10);" (call_expression "printf(__format,iVar10)" identifier (argument_list "(__format,iVar10)" ( identifier , identifier ))) ;) }))) })) (expression_statement "putc(10,(FILE *)*puVar1);" (call_expression "putc(10,(FILE *)*puVar1)" identifier (argument_list "(10,(FILE *)*puVar1)" ( number_literal , (cast_expression "(FILE *)*puVar1" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier)) ))) ;) (if_statement "if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }" if (parenthesized_expression "(((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06'))" ( (binary_expression "((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')" (parenthesized_expression "((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8))" ( (binary_expression "(((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)" (parenthesized_expression "(((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23))" ( (binary_expression "((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)" (parenthesized_expression "((byte)((byte)puVar18[1] >> 4) == 0)" ( (binary_expression "(byte)((byte)puVar18[1] >> 4) == 0" (call_expression "(byte)((byte)puVar18[1] >> 4)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((byte)puVar18[1] >> 4)" ( (binary_expression "(byte)puVar18[1] >> 4" (cast_expression "(byte)puVar18[1]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "puVar18[1]" identifier [ number_literal ])) >> number_literal) ))) == number_literal) )) && (parenthesized_expression "(uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)" ( (comma_expression "uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23" (assignment_expression "uVar12 = *(uint *)(local_ec + 0x2c)" identifier = (pointer_expression "*(uint *)(local_ec + 0x2c)" * (cast_expression "(uint *)(local_ec + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_ec + 0x2c)" ( (binary_expression "local_ec + 0x2c" identifier + number_literal) ))))) , (binary_expression "uVar12 <= uVar23" identifier <= identifier)) ))) )) && (parenthesized_expression "(*(short *)(iVar9 + 0x42) != 8)" ( (binary_expression "*(short *)(iVar9 + 0x42) != 8" (pointer_expression "*(short *)(iVar9 + 0x42)" * (cast_expression "(short *)(iVar9 + 0x42)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x42)" ( (binary_expression "iVar9 + 0x42" identifier + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(*(char *)(iVar9 + 0x17) != '\x06')" ( (binary_expression "*(char *)(iVar9 + 0x17) != '\x06'" (pointer_expression "*(char *)(iVar9 + 0x17)" * (cast_expression "(char *)(iVar9 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x17)" ( (binary_expression "iVar9 + 0x17" identifier + number_literal) )))) != (char_literal "'\x06'" ' escape_sequence ')) ))) )) (compound_statement "{\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }" { (expression_statement "uVar32 = FUN_00022190();" (assignment_expression "uVar32 = FUN_00022190()" identifier = (call_expression "FUN_00022190()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar31 = &UNK_00050db2 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050db2 + unaff_EBP" identifier = (binary_expression "&UNK_00050db2 + unaff_EBP" (pointer_expression "&UNK_00050db2" & identifier) + identifier)) ;) (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" identifier = number_literal) ;) (expression_statement "uVar30 = 0;" (assignment_expression "uVar30 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = dcgettext();" (assignment_expression "uVar19 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);" (call_expression "warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31)" identifier (argument_list "(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31)" ( identifier , identifier , identifier , identifier , identifier , identifier ))) ;) })) (expression_statement "uVar23 = uVar23 + 1;" (assignment_expression "uVar23 = uVar23 + 1" identifier = (binary_expression "uVar23 + 1" identifier + number_literal)) ;) (expression_statement "puVar18 = puVar18 + 7;" (assignment_expression "puVar18 = puVar18 + 7" identifier = (binary_expression "puVar18 + 7" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar23 < local_34[0])" ( (binary_expression "uVar23 < local_34[0]" identifier < (subscript_expression "local_34[0]" identifier [ number_literal ])) )) ;) })) (expression_statement "free(local_80);" (call_expression "free(local_80)" identifier (argument_list "(local_80)" ( identifier ))) ;) (if_statement "if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }" if (parenthesized_expression "(*(void **)(iVar9 + 100) != local_bc)" ( (binary_expression "*(void **)(iVar9 + 100) != local_bc" (pointer_expression "*(void **)(iVar9 + 100)" * (cast_expression "(void **)(iVar9 + 100)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 100)" ( (binary_expression "iVar9 + 100" identifier + number_literal) )))) != identifier) )) (compound_statement "{\n                  free(local_bc);\n                }" { (expression_statement "free(local_bc);" (call_expression "free(local_bc)" identifier (argument_list "(local_bc)" ( identifier ))) ;) })) })) }))) })) (expression_statement "local_b0 = local_b0 + 1;" (assignment_expression "local_b0 = local_b0 + 1" identifier = (binary_expression "local_b0 + 1" identifier + number_literal)) ;) (expression_statement "local_ec = local_ec + 0x48;" (assignment_expression "local_ec = local_ec + 0x48" identifier = (binary_expression "local_ec + 0x48" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_b0 < *(uint *)(iVar9 + 0x54))" ( (binary_expression "local_b0 < *(uint *)(iVar9 + 0x54)" identifier < (pointer_expression "*(uint *)(iVar9 + 0x54)" * (cast_expression "(uint *)(iVar9 + 0x54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x54)" ( (binary_expression "iVar9 + 0x54" identifier + number_literal) ))))) )) ;) }))) (goto_statement "goto LAB_00033418;" goto statement_identifier ;) })) (if_statement "if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;" if (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_00033418;" goto statement_identifier ;)) (labeled_statement "LAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;" statement_identifier : (expression_statement "puVar31 = &UNK_00050dee + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050dee + unaff_EBP" identifier = (binary_expression "&UNK_00050dee + unaff_EBP" (pointer_expression "&UNK_00050dee" & identifier) + identifier)) ;)) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" (assignment_expression "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" identifier = (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (iVar9 == 0) goto LAB_000337f0;" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000337f0;" goto statement_identifier ;)) (labeled_statement "LAB_00033426:\n    local_7c = (size_t)lVar28;" statement_identifier : (expression_statement "local_7c = (size_t)lVar28;" (assignment_expression "local_7c = (size_t)lVar28" identifier = (cast_expression "(size_t)lVar28" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;)) (expression_statement "uVar21 = (uint)((ulonglong)lVar29 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)lVar29 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar29 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_e0 = (uint)lVar29;" (assignment_expression "local_e0 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }" if (parenthesized_expression "(local_78 != (uint *)0x0)" ( (binary_expression "local_78 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }" { (expression_statement "pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);" (assignment_expression "pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" identifier = (cast_expression "(char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" identifier (argument_list "(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" ( number_literal , (binary_expression "&UNK_00050e72 + unaff_EBP" (pointer_expression "&UNK_00050e72" & identifier) + identifier) , (binary_expression "&UNK_00050e36 + unaff_EBP" (pointer_expression "&UNK_00050e36" & identifier) + identifier) , identifier ))))) ;) (expression_statement "printf(pcVar17,local_7c);" (call_expression "printf(pcVar17,local_7c)" identifier (argument_list "(pcVar17,local_7c)" ( identifier , identifier ))) ;) (expression_statement "puVar18 = (uint *)calloc(local_7c,4);" (assignment_expression "puVar18 = (uint *)calloc(local_7c,4)" identifier = (cast_expression "(uint *)calloc(local_7c,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(local_7c,4)" identifier (argument_list "(local_7c,4)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar18 == (uint *)0x0) goto LAB_00034166;" if (parenthesized_expression "(puVar18 == (uint *)0x0)" ( (binary_expression "puVar18 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00034166;" goto statement_identifier ;)) (expression_statement "pvVar15 = (void *)FUN_0005da70();" (assignment_expression "pvVar15 = (void *)FUN_0005da70()" identifier = (cast_expression "(void *)FUN_0005da70()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0005da70()" identifier (argument_list "()" ( ))))) ;) (expression_statement "memset(pvVar15,0,local_e0);" (call_expression "memset(pvVar15,0,local_e0)" identifier (argument_list "(pvVar15,0,local_e0)" ( identifier , number_literal , identifier ))) ;) (expression_statement "puVar31 = &UNK_00050ee6 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050ee6 + unaff_EBP" identifier = (binary_expression "&UNK_00050ee6 + unaff_EBP" (pointer_expression "&UNK_00050ee6" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }" if (parenthesized_expression "(lVar28 == 0)" ( (binary_expression "lVar28 == 0" identifier == number_literal) )) (compound_statement "{\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }" { (expression_statement "free(pvVar15);" (call_expression "free(pvVar15)" identifier (argument_list "(pvVar15)" ( identifier ))) ;) (expression_statement "puVar13 = (uint *)calloc(1,4);" (assignment_expression "puVar13 = (uint *)calloc(1,4)" identifier = (cast_expression "(uint *)calloc(1,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(1,4)" identifier (argument_list "(1,4)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar13 == (uint *)0x0) goto LAB_00034764;" if (parenthesized_expression "(puVar13 == (uint *)0x0)" ( (binary_expression "puVar13 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00034764;" goto statement_identifier ;)) }) (else_clause "else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }" else (compound_statement "{\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }" { (expression_statement "local_c4 = local_78;" (assignment_expression "local_c4 = local_78" identifier = identifier) ;) (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) (expression_statement "local_b4 = puVar18;" (assignment_expression "local_b4 = puVar18" identifier = identifier) ;) (do_statement "do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);" do (compound_statement "{\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        }" { (expression_statement "uVar24 = local_c4[1];" (assignment_expression "uVar24 = local_c4[1]" identifier = (subscript_expression "local_c4[1]" identifier [ number_literal ])) ;) (if_statement "if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }" if (parenthesized_expression "(uVar24 == 0 && *local_c4 == 0)" ( (binary_expression "uVar24 == 0 && *local_c4 == 0" (binary_expression "uVar24 == 0" identifier == number_literal) && (binary_expression "*local_c4 == 0" (pointer_expression "*local_c4" * identifier) == number_literal)) )) (compound_statement "{\n            local_f4 = (uint *)(uVar23 + 1);\n          }" { (expression_statement "local_f4 = (uint *)(uVar23 + 1);" (assignment_expression "local_f4 = (uint *)(uVar23 + 1)" identifier = (cast_expression "(uint *)(uVar23 + 1)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar23 + 1)" ( (binary_expression "uVar23 + 1" identifier + number_literal) )))) ;) }) (else_clause "else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }" else (compound_statement "{\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }" { (expression_statement "uVar22 = *local_b4;" (assignment_expression "uVar22 = *local_b4" identifier = (pointer_expression "*local_b4" * identifier)) ;) (expression_statement "iVar9 = uVar12 - uVar22;" (assignment_expression "iVar9 = uVar12 - uVar22" identifier = (binary_expression "uVar12 - uVar22" identifier - identifier)) ;) (expression_statement "uVar16 = *local_c4;" (assignment_expression "uVar16 = *local_c4" identifier = (pointer_expression "*local_c4" * identifier)) ;) (do_statement "do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);" do (compound_statement "{\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            }" { (expression_statement "uVar22 = uVar22 + 1;" (assignment_expression "uVar22 = uVar22 + 1" identifier = (binary_expression "uVar22 + 1" identifier + number_literal)) ;) (expression_statement "uVar12 = iVar9 + uVar22;" (assignment_expression "uVar12 = iVar9 + uVar22" identifier = (binary_expression "iVar9 + uVar22" identifier + identifier)) ;) (expression_statement "local_f4 = (uint *)(uVar23 + 1);" (assignment_expression "local_f4 = (uint *)(uVar23 + 1)" identifier = (cast_expression "(uint *)(uVar23 + 1)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar23 + 1)" ( (binary_expression "uVar23 + 1" identifier + number_literal) )))) ;) (if_statement "if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }" if (parenthesized_expression "(uVar23 < uVar22)" ( (binary_expression "uVar23 < uVar22" identifier < identifier) )) (compound_statement "{\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }" { (expression_statement "local_f4 = (uint *)(uVar23 + 2);" (assignment_expression "local_f4 = (uint *)(uVar23 + 2)" identifier = (cast_expression "(uint *)(uVar23 + 2)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar23 + 2)" ( (binary_expression "uVar23 + 2" identifier + number_literal) )))) ;) (expression_statement "uVar23 = uVar23 + 1;" (assignment_expression "uVar23 = uVar23 + 1" identifier = (binary_expression "uVar23 + 1" identifier + number_literal)) ;) })) (if_statement "if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }" if (parenthesized_expression "((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0'))" ( (binary_expression "(uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')" (parenthesized_expression "(uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21)" ( (binary_expression "uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21" (binary_expression "uVar21 <= uVar24" identifier <= identifier) && (binary_expression "(uint)(uVar16 < local_e0) <= uVar24 - uVar21" (call_expression "(uint)(uVar16 < local_e0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar16 < local_e0)" ( (binary_expression "uVar16 < local_e0" identifier < identifier) ))) <= (binary_expression "uVar24 - uVar21" identifier - identifier))) )) || (parenthesized_expression "(*(char *)((int)pvVar15 + uVar16) != '\0')" ( (binary_expression "*(char *)((int)pvVar15 + uVar16) != '\0'" (pointer_expression "*(char *)((int)pvVar15 + uVar16)" * (cast_expression "(char *)((int)pvVar15 + uVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar15 + uVar16)" ( (binary_expression "(int)pvVar15 + uVar16" (cast_expression "(int)pvVar15" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }" { (expression_statement "*local_b4 = uVar22;" (assignment_expression "*local_b4 = uVar22" (pointer_expression "*local_b4" * identifier) = identifier) ;) (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_000335a5;" goto statement_identifier ;) })) (expression_statement "*(char *)((int)pvVar15 + uVar16) = '\x01';" (assignment_expression "*(char *)((int)pvVar15 + uVar16) = '\x01'" (pointer_expression "*(char *)((int)pvVar15 + uVar16)" * (cast_expression "(char *)((int)pvVar15 + uVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar15 + uVar16)" ( (binary_expression "(int)pvVar15 + uVar16" (cast_expression "(int)pvVar15" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "uVar6 = *(uint *)((int)local_cc + uVar16 * 8);" (assignment_expression "uVar6 = *(uint *)((int)local_cc + uVar16 * 8)" identifier = (pointer_expression "*(uint *)((int)local_cc + uVar16 * 8)" * (cast_expression "(uint *)((int)local_cc + uVar16 * 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_cc + uVar16 * 8)" ( (binary_expression "(int)local_cc + uVar16 * 8" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar16 * 8" identifier * number_literal)) ))))) ;) (expression_statement "uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);" (assignment_expression "uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_cc + uVar16 * 8 + 4)" * (cast_expression "(uint *)((int)local_cc + uVar16 * 8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_cc + uVar16 * 8 + 4)" ( (binary_expression "(int)local_cc + uVar16 * 8 + 4" (binary_expression "(int)local_cc + uVar16 * 8" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar16 * 8" identifier * number_literal)) + number_literal) ))))) ;) (expression_statement "uVar16 = uVar6;" (assignment_expression "uVar16 = uVar6" identifier = identifier) ;) }) while (parenthesized_expression "(uVar24 != 0 || uVar6 != 0)" ( (binary_expression "uVar24 != 0 || uVar6 != 0" (binary_expression "uVar24 != 0" identifier != number_literal) || (binary_expression "uVar6 != 0" identifier != number_literal)) )) ;) (expression_statement "*local_b4 = uVar22;" (assignment_expression "*local_b4 = uVar22" (pointer_expression "*local_b4" * identifier) = identifier) ;) }))) (labeled_statement "LAB_000335a5:\n          local_c4 = local_c4 + 2;" statement_identifier : (expression_statement "local_c4 = local_c4 + 2;" (assignment_expression "local_c4 = local_c4 + 2" identifier = (binary_expression "local_c4 + 2" identifier + number_literal)) ;)) (expression_statement "local_b4 = local_b4 + 1;" (assignment_expression "local_b4 = local_b4 + 1" identifier = (binary_expression "local_b4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_78 + local_7c * 2 != local_c4)" ( (binary_expression "local_78 + local_7c * 2 != local_c4" (binary_expression "local_78 + local_7c * 2" identifier + (binary_expression "local_7c * 2" identifier * number_literal)) != identifier) )) ;) (expression_statement "free(pvVar15);" (call_expression "free(pvVar15)" identifier (argument_list "(pvVar15)" ( identifier ))) ;) (expression_statement "puVar13 = (uint *)calloc((size_t)local_f4,4);" (assignment_expression "puVar13 = (uint *)calloc((size_t)local_f4,4)" identifier = (cast_expression "(uint *)calloc((size_t)local_f4,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc((size_t)local_f4,4)" identifier (argument_list "((size_t)local_f4,4)" ( (cast_expression "(size_t)local_f4" ( (type_descriptor "size_t" primitive_type) ) identifier) , number_literal ))))) ;) (if_statement "if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }" if (parenthesized_expression "(puVar13 == (uint *)0x0)" ( (binary_expression "puVar13 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }" { (labeled_statement "LAB_00034764:\n          free(puVar18);" statement_identifier : (expression_statement "free(puVar18);" (call_expression "free(puVar18)" identifier (argument_list "(puVar18)" ( identifier ))) ;)) (goto_statement "goto LAB_00034166;" goto statement_identifier ;) })) (expression_statement "puVar14 = puVar18;" (assignment_expression "puVar14 = puVar18" identifier = identifier) ;) (do_statement "do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);" do (compound_statement "{\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        }" { (expression_statement "uVar21 = *puVar14;" (assignment_expression "uVar21 = *puVar14" identifier = (pointer_expression "*puVar14" * identifier)) ;) (expression_statement "puVar14 = puVar14 + 1;" (assignment_expression "puVar14 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) (expression_statement "puVar13[uVar21] = puVar13[uVar21] + 1;" (assignment_expression "puVar13[uVar21] = puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" identifier [ identifier ]) = (binary_expression "puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" identifier [ identifier ]) + number_literal)) ;) }) while (parenthesized_expression "(puVar18 + local_7c != puVar14)" ( (binary_expression "puVar18 + local_7c != puVar14" (binary_expression "puVar18 + local_7c" identifier + identifier) != identifier) )) ;) (expression_statement "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;" (assignment_expression "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c" identifier = (binary_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c" (parenthesized_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(double)*puVar13" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*puVar13" * identifier)) * (cast_expression "(double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) )))))) )) / (cast_expression "(double)(int)local_7c" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_7c" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) (expression_statement "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );" (call_expression "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" identifier (argument_list "((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" ( (cast_expression "(char *)(unaff_EBP + 0x48f47)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48f47)" ( (binary_expression "unaff_EBP + 0x48f47" identifier + number_literal) ))) , (pointer_expression "*puVar13" * identifier) , (call_expression "SUB84(dVar3,0)" identifier (argument_list "(dVar3,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" ( (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (if_statement "if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" if (parenthesized_expression "(uVar23 != 0)" ( (binary_expression "uVar23 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" { (expression_statement "uVar24 = 0;" (assignment_expression "uVar24 = 0" identifier = number_literal) ;) (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" identifier = number_literal) ;) (do_statement "do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);" do (compound_statement "{\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          }" { (expression_statement "uVar22 = puVar13[uVar21];" (assignment_expression "uVar22 = puVar13[uVar21]" identifier = (subscript_expression "puVar13[uVar21]" identifier [ identifier ])) ;) (expression_statement "uVar24 = uVar24 + uVar22 * uVar21;" (assignment_expression "uVar24 = uVar24 + uVar22 * uVar21" identifier = (binary_expression "uVar24 + uVar22 * uVar21" identifier + (binary_expression "uVar22 * uVar21" identifier * identifier))) ;) (expression_statement "dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );" (assignment_expression "dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            )" identifier = (cast_expression "(double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            )" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            )" ( (binary_expression "((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12" (parenthesized_expression "((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar24" ( (type_descriptor "float" primitive_type) ) identifier) * (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) ))))) )) / (cast_expression "(float)uVar12" ( (type_descriptor "float" primitive_type) ) identifier)) )))) ;) (expression_statement "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));" (call_expression "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" identifier (argument_list "(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" ( (binary_expression "&UNK_00050f4a + unaff_EBP" (pointer_expression "&UNK_00050f4a" & identifier) + identifier) , identifier , identifier , (cast_expression "(double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c)" ( (binary_expression "((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c" (parenthesized_expression "((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar22" ( (type_descriptor "float" primitive_type) ) identifier) * (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) ))))) )) / (cast_expression "(float)(int)local_7c" ( (type_descriptor "float" primitive_type) ) (cast_expression "(int)local_7c" ( (type_descriptor "int" primitive_type) ) identifier))) ))) , (call_expression "SUB84(dVar3,0)" identifier (argument_list "(dVar3,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" ( (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (expression_statement "bVar25 = uVar23 != uVar21;" (assignment_expression "bVar25 = uVar23 != uVar21" identifier = (binary_expression "uVar23 != uVar21" identifier != identifier)) ;) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" identifier = (binary_expression "uVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) })) }))) (expression_statement "free(puVar13);" (call_expression "free(puVar13)" identifier (argument_list "(puVar13)" ( identifier ))) ;) (expression_statement "free(puVar18);" (call_expression "free(puVar18)" identifier (argument_list "(puVar18)" ( identifier ))) ;) (expression_statement "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" (assignment_expression "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" identifier = (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (goto_statement "goto LAB_000337ff;" goto statement_identifier ;) })) }) (else_clause "else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }" else (compound_statement "{\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }" { (expression_statement "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (pointer_expression "*(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" identifier = (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" * (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (pointer_expression "*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }" if (parenthesized_expression "(iVar10 != 0 || uVar21 != 0)" ( (binary_expression "iVar10 != 0 || uVar21 != 0" (binary_expression "iVar10 != 0" identifier != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) )) (compound_statement "{\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }" { (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }" { (labeled_statement "LAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);" statement_identifier : (expression_statement "sVar5 = *(short *)(iVar9 + 0x42);" (assignment_expression "sVar5 = *(short *)(iVar9 + 0x42)" identifier = (pointer_expression "*(short *)(iVar9 + 0x42)" * (cast_expression "(short *)(iVar9 + 0x42)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x42)" ( (binary_expression "iVar9 + 0x42" identifier + number_literal) ))))) ;)) (if_statement "if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }" if (parenthesized_expression "((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70))" ( (binary_expression "(sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)" (parenthesized_expression "(sVar5 == -0x6fda || sVar5 == 0x16)" ( (binary_expression "sVar5 == -0x6fda || sVar5 == 0x16" (binary_expression "sVar5 == -0x6fda" identifier == number_literal) || (binary_expression "sVar5 == 0x16" identifier == number_literal)) )) || (parenthesized_expression "(sVar11 = 4, sVar5 == -0x5c70)" ( (comma_expression "sVar11 = 4, sVar5 == -0x5c70" (assignment_expression "sVar11 = 4" identifier = number_literal) , (binary_expression "sVar5 == -0x5c70" identifier == number_literal)) ))) )) (compound_statement "{\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }" { (expression_statement "sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;" (assignment_expression "sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4" identifier = (binary_expression "(uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4" (binary_expression "(uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4" (call_expression "(uint)(*(char *)(iVar9 + 0x14) == '\x02')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(char *)(iVar9 + 0x14) == '\x02')" ( (binary_expression "*(char *)(iVar9 + 0x14) == '\x02'" (pointer_expression "*(char *)(iVar9 + 0x14)" * (cast_expression "(char *)(iVar9 + 0x14)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x14)" ( (binary_expression "iVar9 + 0x14" identifier + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) ))) * number_literal) + number_literal)) ;) })) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" identifier = (call_expression "FUN_00026dc0()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0)" identifier = (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0)" identifier (argument_list "(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0)" ( (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) , (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" identifier + (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" * (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" ( (binary_expression ""  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                        unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) , number_literal )))) ;) (if_statement "if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }" if (parenthesized_expression "(((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1))" ( (binary_expression "((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)" (parenthesized_expression "((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            )" ( (binary_expression "(iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) && (parenthesized_expression "(sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)" ( (comma_expression "sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1" (assignment_expression "sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4))" identifier = (call_expression "fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4))" identifier (argument_list "(local_34,sVar11,1,*(FILE **)(iVar9 + 4))" ( identifier , identifier , number_literal , (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) )))) , (binary_expression "sVar20 == 1" identifier == number_literal)) ))) )) && (parenthesized_expression "(sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)" ( (comma_expression "sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1" (assignment_expression "sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4))" identifier = (call_expression "fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4))" identifier (argument_list "(local_2c,sVar11,1,*(FILE **)(iVar9 + 4))" ( identifier , identifier , number_literal , (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) )))) , (binary_expression "sVar11 == 1" identifier == number_literal)) ))) )) (compound_statement "{\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }" { (expression_statement "lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();" (assignment_expression "lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))()" identifier = (call_expression "(**(code **)(&UNK_000870fe + unaff_EBP))()" (parenthesized_expression "(**(code **)(&UNK_000870fe + unaff_EBP))" ( (pointer_expression "**(code **)(&UNK_000870fe + unaff_EBP)" * (pointer_expression "*(code **)(&UNK_000870fe + unaff_EBP)" * (cast_expression "(code **)(&UNK_000870fe + unaff_EBP)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&UNK_000870fe + unaff_EBP)" ( (binary_expression "&UNK_000870fe + unaff_EBP" (pointer_expression "&UNK_000870fe" & identifier) + identifier) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();" (assignment_expression "lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))()" identifier = (call_expression "(**(code **)(&UNK_000870fe + unaff_EBP))()" (parenthesized_expression "(**(code **)(&UNK_000870fe + unaff_EBP))" ( (pointer_expression "**(code **)(&UNK_000870fe + unaff_EBP)" * (pointer_expression "*(code **)(&UNK_000870fe + unaff_EBP)" * (cast_expression "(code **)(&UNK_000870fe + unaff_EBP)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&UNK_000870fe + unaff_EBP)" ( (binary_expression "&UNK_000870fe + unaff_EBP" (pointer_expression "&UNK_000870fe" & identifier) + identifier) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "local_78 = (uint *)FUN_0001e0f0();" (assignment_expression "local_78 = (uint *)FUN_0001e0f0()" identifier = (cast_expression "(uint *)FUN_0001e0f0()" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001e0f0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_cc = (void *)FUN_0001e0f0();" (assignment_expression "local_cc = (void *)FUN_0001e0f0()" identifier = (cast_expression "(void *)FUN_0001e0f0()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001e0f0()" identifier (argument_list "()" ( ))))) ;) (if_statement "if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;" if (parenthesized_expression "((local_78 != (uint *)0x0) && (local_cc != (void *)0x0))" ( (binary_expression "(local_78 != (uint *)0x0) && (local_cc != (void *)0x0)" (parenthesized_expression "(local_78 != (uint *)0x0)" ( (binary_expression "local_78 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(local_cc != (void *)0x0)" ( (binary_expression "local_cc != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_0003325f;" goto statement_identifier ;)) }) (else_clause "else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }" else (compound_statement "{\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n          return 0;\n        }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "free(local_78);" (call_expression "free(local_78)" identifier (argument_list "(local_78)" ( identifier ))) ;) (expression_statement "free(local_cc);" (call_expression "free(local_cc)" identifier (argument_list "(local_cc)" ( identifier ))) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" identifier = number_literal) ;) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0003325f;" goto statement_identifier ;) })) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }" { (if_statement "if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;" if (parenthesized_expression "((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))" ( (binary_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0)" (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0)" ( (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 0xe" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) ))) )) (goto_statement "goto LAB_00033f90;" goto statement_identifier ;)) (expression_statement "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);" (assignment_expression "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" identifier = (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);" (assignment_expression "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" identifier = (pointer_expression "*(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (local_54 == 0 && local_50 == 0) goto LAB_00033382;" if (parenthesized_expression "(local_54 == 0 && local_50 == 0)" ( (binary_expression "local_54 == 0 && local_50 == 0" (binary_expression "local_54 == 0" identifier == number_literal) && (binary_expression "local_50 == 0" identifier == number_literal)) )) (goto_statement "goto LAB_00033382;" goto statement_identifier ;)) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" identifier = number_literal) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" identifier = number_literal) ;) (labeled_statement "LAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;" statement_identifier : (if_statement "if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;" if (parenthesized_expression "((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))" ( (binary_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0)" (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) || (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0)" ( (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" ( (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 0xe" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) ))) )) (goto_statement "goto LAB_000332b0;" goto statement_identifier ;))) (goto_statement "goto LAB_00032d84;" goto statement_identifier ;) })) (expression_statement "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);" (assignment_expression "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" identifier = (pointer_expression "*(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);" (assignment_expression "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" identifier = (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }" if (parenthesized_expression "(local_54 != 0 || local_50 != 0)" ( (binary_expression "local_54 != 0 || local_50 != 0" (binary_expression "local_54 != 0" identifier != number_literal) || (binary_expression "local_50 != 0" identifier != number_literal)) )) (compound_statement "{\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }" { (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" identifier = number_literal) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_000332bc;" goto statement_identifier ;) })) (labeled_statement "LAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);" statement_identifier : (expression_statement "lVar27 = CONCAT44(local_50,local_54);" (assignment_expression "lVar27 = CONCAT44(local_50,local_54)" identifier = (call_expression "CONCAT44(local_50,local_54)" identifier (argument_list "(local_50,local_54)" ( identifier , identifier )))) ;)) (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar26 = lVar27;" (assignment_expression "lVar26 = lVar27" identifier = identifier) ;) (expression_statement "lVar29 = lVar27;" (assignment_expression "lVar29 = lVar27" identifier = identifier) ;) (expression_statement "lVar28 = lVar27;" (assignment_expression "lVar28 = lVar27" identifier = identifier) ;) (goto_statement "goto LAB_000333c0;" goto statement_identifier ;) })) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lVar29 = lVar28;" (assignment_expression "lVar29 = lVar28" identifier = identifier) ;) (labeled_statement "LAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;" statement_identifier : (if_statement "if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;" if (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)" ( (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) && (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal)) )) (goto_statement "goto LAB_00033740;" goto statement_identifier ;))) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }" { (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_00033293;" goto statement_identifier ;)) (labeled_statement "LAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" statement_identifier : (expression_statement "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (pointer_expression "*(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;)) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" identifier = (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" * (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (goto_statement "goto LAB_000332bc;" goto statement_identifier ;) })) (labeled_statement "LAB_00032d84:\n    iVar10 = FUN_00026dc0();" statement_identifier : (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" identifier = (call_expression "FUN_00026dc0()" identifier (argument_list "()" ( )))) ;)) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0)" identifier = (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0)" identifier (argument_list "(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0)" ( (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) , (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" identifier + (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" * (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" ( (binary_expression ""  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                    unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) , number_literal )))) ;) (if_statement "if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }" { (expression_statement "sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));" (assignment_expression "sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4))" identifier = (call_expression "fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4))" identifier (argument_list "(local_2c,0x10,1,*(FILE **)(iVar9 + 4))" ( identifier , number_literal , number_literal , (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) )))) ;) (if_statement "if (sVar11 != 1) goto LAB_00034303;" if (parenthesized_expression "(sVar11 != 1)" ( (binary_expression "sVar11 != 1" identifier != number_literal) )) (goto_statement "goto LAB_00034303;" goto statement_identifier ;)) (expression_statement "puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);" (assignment_expression "puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP)" identifier = (cast_expression "(undefined4 *)(&UNK_000870fe + unaff_EBP)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&UNK_000870fe + unaff_EBP)" ( (binary_expression "&UNK_000870fe + unaff_EBP" (pointer_expression "&UNK_000870fe" & identifier) + identifier) )))) ;) (expression_statement "lVar26 = (*(code *)*puVar1)();" (assignment_expression "lVar26 = (*(code *)*puVar1)()" identifier = (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" ( (pointer_expression "*(code *)*puVar1" * (cast_expression "(code *)*puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier))) )) (argument_list "()" ( )))) ;) (expression_statement "lVar27 = (*(code *)*puVar1)();" (assignment_expression "lVar27 = (*(code *)*puVar1)()" identifier = (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" ( (pointer_expression "*(code *)*puVar1" * (cast_expression "(code *)*puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier))) )) (argument_list "()" ( )))) ;) (expression_statement "uVar23 = (uint)((ulonglong)lVar27 >> 0x20);" (assignment_expression "uVar23 = (uint)((ulonglong)lVar27 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar27 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar27 >> 0x20)" ( (binary_expression "(ulonglong)lVar27 >> 0x20" (cast_expression "(ulonglong)lVar27" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "uVar21 = (uint)lVar27;" (assignment_expression "uVar21 = (uint)lVar27" identifier = (cast_expression "(uint)lVar27" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "(*(code *)*puVar1)();" (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" ( (pointer_expression "*(code *)*puVar1" * (cast_expression "(code *)*puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" identifier = (call_expression "FUN_00026dc0()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier = (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier (argument_list "(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" ( (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) , (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" identifier + (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" * (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) , number_literal )))) ;) (if_statement "if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00034347;" goto statement_identifier ;) })) (expression_statement "local_6c = (uint *)FUN_0001e0f0();" (assignment_expression "local_6c = (uint *)FUN_0001e0f0()" identifier = (cast_expression "(uint *)FUN_0001e0f0()" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001e0f0()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" if (parenthesized_expression "(local_6c == (uint *)0x0)" ( (binary_expression "local_6c == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" { (labeled_statement "LAB_000346fb:\n        lVar26 = 0;" statement_identifier : (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_00034347;" goto statement_identifier ;) })) (if_statement "if (lVar26 == 0) goto LAB_00034347;" if (parenthesized_expression "(lVar26 == 0)" ( (binary_expression "lVar26 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00034347;" goto statement_identifier ;)) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) (expression_statement "local_ec = 0xffffffff;" (assignment_expression "local_ec = 0xffffffff" identifier = number_literal) ;) (expression_statement "uStack_e8 = 0;" (assignment_expression "uStack_e8 = 0" identifier = number_literal) ;) (do_statement "do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));" do (compound_statement "{\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      }" { (expression_statement "uVar12 = local_6c[local_54 * 2];" (assignment_expression "uVar12 = local_6c[local_54 * 2]" identifier = (subscript_expression "local_6c[local_54 * 2]" identifier [ (binary_expression "local_54 * 2" identifier * number_literal) ])) ;) (expression_statement "uVar24 = (local_6c + local_54 * 2)[1];" (assignment_expression "uVar24 = (local_6c + local_54 * 2)[1]" identifier = (subscript_expression "(local_6c + local_54 * 2)[1]" (parenthesized_expression "(local_6c + local_54 * 2)" ( (binary_expression "local_6c + local_54 * 2" identifier + (binary_expression "local_54 * 2" identifier * number_literal)) )) [ number_literal ])) ;) (if_statement "if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }" if (parenthesized_expression "(uVar24 != 0 || uVar12 != 0)" ( (binary_expression "uVar24 != 0 || uVar12 != 0" (binary_expression "uVar24 != 0" identifier != number_literal) || (binary_expression "uVar12 != 0" identifier != number_literal)) )) (compound_statement "{\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }" { (if_statement "if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }" if (parenthesized_expression "(uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21))" ( (binary_expression "uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)" (binary_expression "uVar24 < uVar23" identifier < identifier) || (binary_expression "uVar24 - uVar23 < (uint)(uVar12 < uVar21)" (binary_expression "uVar24 - uVar23" identifier - identifier) < (call_expression "(uint)(uVar12 < uVar21)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar12 < uVar21)" ( (binary_expression "uVar12 < uVar21" identifier < identifier) ))))) )) (compound_statement "{\n            return 0;\n          }" { (return_statement "return 0;" return number_literal ;) })) (if_statement "if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }" if (parenthesized_expression "((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0))" ( (binary_expression "(uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)" (parenthesized_expression "(uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12))" ( (binary_expression "uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)" (binary_expression "uStack_e8 < uVar24" identifier < identifier) || (binary_expression "uStack_e8 - uVar24 < (uint)(local_ec < uVar12)" (binary_expression "uStack_e8 - uVar24" identifier - identifier) < (call_expression "(uint)(local_ec < uVar12)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_ec < uVar12)" ( (binary_expression "local_ec < uVar12" identifier < identifier) ))))) )) || (parenthesized_expression "(local_ec == 0xffffffff && uStack_e8 == 0)" ( (binary_expression "local_ec == 0xffffffff && uStack_e8 == 0" (binary_expression "local_ec == 0xffffffff" identifier == number_literal) && (binary_expression "uStack_e8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }" { (expression_statement "local_ec = uVar12;" (assignment_expression "local_ec = uVar12" identifier = identifier) ;) (expression_statement "uStack_e8 = uVar24;" (assignment_expression "uStack_e8 = uVar24" identifier = identifier) ;) })) })) (expression_statement "bVar25 = 0xfffffffe < local_54;" (assignment_expression "bVar25 = 0xfffffffe < local_54" identifier = (binary_expression "0xfffffffe < local_54" number_literal < identifier)) ;) (expression_statement "local_54 = local_54 + 1;" (assignment_expression "local_54 = local_54 + 1" identifier = (binary_expression "local_54 + 1" identifier + number_literal)) ;) (expression_statement "local_50 = local_50 + (uint)bVar25;" (assignment_expression "local_50 = local_50 + (uint)bVar25" identifier = (binary_expression "local_50 + (uint)bVar25" identifier + (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) while (parenthesized_expression "(lVar26 != CONCAT44(local_50,local_54))" ( (binary_expression "lVar26 != CONCAT44(local_50,local_54)" identifier != (call_expression "CONCAT44(local_50,local_54)" identifier (argument_list "(local_50,local_54)" ( identifier , identifier )))) )) ;) (if_statement "if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;" if (parenthesized_expression "(uStack_e8 == 0 && local_ec == 0xffffffff)" ( (binary_expression "uStack_e8 == 0 && local_ec == 0xffffffff" (binary_expression "uStack_e8 == 0" identifier == number_literal) && (binary_expression "local_ec == 0xffffffff" identifier == number_literal)) )) (goto_statement "goto LAB_000346fb;" goto statement_identifier ;)) (expression_statement "uVar12 = local_ec - uVar21;" (assignment_expression "uVar12 = local_ec - uVar21" identifier = (binary_expression "local_ec - uVar21" identifier - identifier)) ;) (expression_statement "uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);" (assignment_expression "uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21)" identifier = (binary_expression "(uStack_e8 - uVar23) - (uint)(local_ec < uVar21)" (parenthesized_expression "(uStack_e8 - uVar23)" ( (binary_expression "uStack_e8 - uVar23" identifier - identifier) )) - (call_expression "(uint)(local_ec < uVar21)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_ec < uVar21)" ( (binary_expression "local_ec < uVar21" identifier < identifier) ))))) ;) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" identifier = (call_expression "FUN_00026dc0()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier = (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier (argument_list "(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" ( (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) , (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" identifier + (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" * (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) , number_literal )))) ;) (if_statement "if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" { (labeled_statement "LAB_00033073:\n        dcgettext();" statement_identifier : (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;)) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00034347;" goto statement_identifier ;) })) (do_statement "do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);" do (compound_statement "{\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      }" { (expression_statement "sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));" (assignment_expression "sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4))" identifier = (call_expression "fread(local_2c,4,1,*(FILE **)(iVar9 + 4))" identifier (argument_list "(local_2c,4,1,*(FILE **)(iVar9 + 4))" ( identifier , number_literal , number_literal , (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) )))) ;) (if_statement "if (sVar11 != 1) goto LAB_00033073;" if (parenthesized_expression "(sVar11 != 1)" ( (binary_expression "sVar11 != 1" identifier != number_literal) )) (goto_statement "goto LAB_00033073;" goto statement_identifier ;)) (if_statement "if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;" if (parenthesized_expression "((uVar21 & uVar12) == 0xffffffff)" ( (binary_expression "(uVar21 & uVar12) == 0xffffffff" (parenthesized_expression "(uVar21 & uVar12)" ( (binary_expression "uVar21 & uVar12" identifier & identifier) )) == number_literal) )) (goto_statement "goto LAB_000346fb;" goto statement_identifier ;)) (expression_statement "bVar25 = 0xfffffffe < uVar12;" (assignment_expression "bVar25 = 0xfffffffe < uVar12" identifier = (binary_expression "0xfffffffe < uVar12" number_literal < identifier)) ;) (expression_statement "uVar12 = uVar12 + 1;" (assignment_expression "uVar12 = uVar12 + 1" identifier = (binary_expression "uVar12 + 1" identifier + number_literal)) ;) (expression_statement "uVar21 = uVar21 + bVar25;" (assignment_expression "uVar21 = uVar21 + bVar25" identifier = (binary_expression "uVar21 + bVar25" identifier + identifier)) ;) (expression_statement "lVar26 = CONCAT44(uVar21,uVar12);" (assignment_expression "lVar26 = CONCAT44(uVar21,uVar12)" identifier = (call_expression "CONCAT44(uVar21,uVar12)" identifier (argument_list "(uVar21,uVar12)" ( identifier , identifier )))) ;) (expression_statement "uVar23 = (*(code *)*puVar1)();" (assignment_expression "uVar23 = (*(code *)*puVar1)()" identifier = (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" ( (pointer_expression "*(code *)*puVar1" * (cast_expression "(code *)*puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar1" * identifier))) )) (argument_list "()" ( )))) ;) }) while (parenthesized_expression "((uVar23 & 1) == 0)" ( (binary_expression "(uVar23 & 1) == 0" (parenthesized_expression "(uVar23 & 1)" ( (binary_expression "uVar23 & 1" identifier & number_literal) )) == number_literal) )) ;) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" identifier = (call_expression "FUN_00026dc0()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier = (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" identifier (argument_list "(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" ( (pointer_expression "*(FILE **)(iVar9 + 4)" * (cast_expression "(FILE **)(iVar9 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) , (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" identifier + (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" * (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" ( (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) , number_literal )))) ;) (if_statement "if (iVar10 != 0) goto LAB_00033073;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00033073;" goto statement_identifier ;)) (expression_statement "local_90 = (void *)FUN_0001e0f0();" (assignment_expression "local_90 = (void *)FUN_0001e0f0()" identifier = (cast_expression "(void *)FUN_0001e0f0()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001e0f0()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (local_90 == (void *)0x0) goto LAB_00034347;" if (parenthesized_expression "(local_90 == (void *)0x0)" ( (binary_expression "local_90 == (void *)0x0" identifier == (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00034347;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" else (compound_statement "{\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" { (labeled_statement "LAB_00034303:\n      dcgettext();" statement_identifier : (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;)) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (expression_statement "lVar27 = 0;" (assignment_expression "lVar27 = 0" identifier = number_literal) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00034347:\n      free(local_6c);" statement_identifier : (expression_statement "free(local_6c);" (call_expression "free(local_6c)" identifier (argument_list "(local_6c)" ( identifier ))) ;)) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n        return 0;\n      }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) }))) (expression_statement "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" identifier = (pointer_expression "*(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" * (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" identifier = (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" * (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" ( (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;) (if_statement "if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;" if (parenthesized_expression "((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0))" ( (binary_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)" (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0)" ( (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (binary_expression "iVar10 != 0" identifier != number_literal)) )) || (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)" ( (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" * (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" ( (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000333c0;" goto statement_identifier ;)) (labeled_statement "LAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;" statement_identifier : (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_00033a30;" goto statement_identifier ;))) (if_statement "if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }" if (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0)" ( (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" ( (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }" { (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;" if (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" ( (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_000337b9;" goto statement_identifier ;)) (labeled_statement "LAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);" statement_identifier : (expression_statement "local_ec = *(int *)(iVar9 + 0x5c);" (assignment_expression "local_ec = *(int *)(iVar9 + 0x5c)" identifier = (pointer_expression "*(int *)(iVar9 + 0x5c)" * (cast_expression "(int *)(iVar9 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x5c)" ( (binary_expression "iVar9 + 0x5c" identifier + number_literal) ))))) ;)) (if_statement "if (local_ec == 0) goto LAB_000337b9;" if (parenthesized_expression "(local_ec == 0)" ( (binary_expression "local_ec == 0" identifier == number_literal) )) (goto_statement "goto LAB_000337b9;" goto statement_identifier ;)) (goto_statement "goto LAB_00033a43;" goto statement_identifier ;) })) (labeled_statement "LAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" statement_identifier : (expression_statement "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" (assignment_expression "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" identifier = (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" * (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" ( (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" " string_content escape_sequence ") + identifier) + number_literal) ))))) ;)) (if_statement "if (iVar9 != 0) goto LAB_00033426;" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00033426;" goto statement_identifier ;)) (labeled_statement "LAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }" statement_identifier : (if_statement "if (local_78 == (uint *)0x0) {\n      return 1;\n    }" if (parenthesized_expression "(local_78 == (uint *)0x0)" ( (binary_expression "local_78 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) }))) (labeled_statement "LAB_000337ff:\n    free(local_78);" statement_identifier : (expression_statement "free(local_78);" (call_expression "free(local_78)" identifier (argument_list "(local_78)" ( identifier ))) ;)) (expression_statement "free(local_cc);" (call_expression "free(local_cc)" identifier (argument_list "(local_cc)" ( identifier ))) ;) }))) (expression_statement "local_70 = (uint)((ulonglong)lVar26 >> 0x20);" (assignment_expression "local_70 = (uint)((ulonglong)lVar26 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar26 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar26 >> 0x20)" ( (binary_expression "(ulonglong)lVar26 >> 0x20" (cast_expression "(ulonglong)lVar26" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_74 = (uint)lVar26;" (assignment_expression "local_74 = (uint)lVar26" identifier = (cast_expression "(uint)lVar26" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_88 = (int)((ulonglong)lVar27 >> 0x20);" (assignment_expression "local_88 = (int)((ulonglong)lVar27 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar27 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar27 >> 0x20)" ( (binary_expression "(ulonglong)lVar27 >> 0x20" (cast_expression "(ulonglong)lVar27" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_8c = (uint)lVar27;" (assignment_expression "local_8c = (uint)lVar27" identifier = (cast_expression "(uint)lVar27" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (local_6c == (uint *)0x0) {\n    return 1;\n  }" if (parenthesized_expression "(local_6c == (uint *)0x0)" ( (binary_expression "local_6c == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return 1;\n  }" { (return_statement "return 1;" return number_literal ;) })) (if_statement "if (iVar9 == 0) {\n    return 1;\n  }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n    return 1;\n  }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);" (assignment_expression "pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" identifier = (cast_expression "(char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" identifier (argument_list "(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" ( number_literal , (binary_expression "&UNK_00050fb6 + unaff_EBP" (pointer_expression "&UNK_00050fb6" & identifier) + identifier) , (binary_expression "&UNK_00050f6e + unaff_EBP" (pointer_expression "&UNK_00050f6e" & identifier) + identifier) , identifier ))))) ;) (expression_statement "printf(pcVar17,local_54);" (call_expression "printf(pcVar17,local_54)" identifier (argument_list "(pcVar17,local_54)" ( identifier , identifier ))) ;) (expression_statement "puVar18 = (uint *)calloc(local_54,4);" (assignment_expression "puVar18 = (uint *)calloc(local_54,4)" identifier = (cast_expression "(uint *)calloc(local_54,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(local_54,4)" identifier (argument_list "(local_54,4)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar18 != (uint *)0x0) {\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }" if (parenthesized_expression "(puVar18 != (uint *)0x0)" ( (binary_expression "puVar18 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }" { (expression_statement "puVar31 = &UNK_00050ee6 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050ee6 + unaff_EBP" identifier = (binary_expression "&UNK_00050ee6 + unaff_EBP" (pointer_expression "&UNK_00050ee6" & identifier) + identifier)) ;) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" identifier = number_literal) ;) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" identifier (argument_list "(pcVar17,puVar31,uVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" if (parenthesized_expression "(local_50 == 0 && local_54 == 0)" ( (binary_expression "local_50 == 0 && local_54 == 0" (binary_expression "local_50 == 0" identifier == number_literal) && (binary_expression "local_54 == 0" identifier == number_literal)) )) (compound_statement "{\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }" { (expression_statement "puVar13 = (uint *)calloc(1,4);" (assignment_expression "puVar13 = (uint *)calloc(1,4)" identifier = (cast_expression "(uint *)calloc(1,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc(1,4)" identifier (argument_list "(1,4)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar13 != (uint *)0x0) goto LAB_000331cb;" if (parenthesized_expression "(puVar13 != (uint *)0x0)" ( (binary_expression "puVar13 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000331cb;" goto statement_identifier ;)) }) (else_clause "else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" else (compound_statement "{\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" { (expression_statement "local_c4 = (uint *)0x0;" (assignment_expression "local_c4 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_f4 = local_6c;" (assignment_expression "local_f4 = local_6c" identifier = identifier) ;) (expression_statement "local_dc = puVar18;" (assignment_expression "local_dc = puVar18" identifier = identifier) ;) (do_statement "do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);" do (compound_statement "{\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      }" { (expression_statement "uVar21 = *local_f4;" (assignment_expression "uVar21 = *local_f4" identifier = (pointer_expression "*local_f4" * identifier)) ;) (if_statement "if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }" if (parenthesized_expression "(local_f4[1] != 0 || uVar21 != 0)" ( (binary_expression "local_f4[1] != 0 || uVar21 != 0" (binary_expression "local_f4[1] != 0" (subscript_expression "local_f4[1]" identifier [ number_literal ]) != number_literal) || (binary_expression "uVar21 != 0" identifier != number_literal)) )) (compound_statement "{\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }" { (expression_statement "uVar23 = uVar21 - local_8c;" (assignment_expression "uVar23 = uVar21 - local_8c" identifier = (binary_expression "uVar21 - local_8c" identifier - identifier)) ;) (expression_statement "uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);" (assignment_expression "uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c)" identifier = (binary_expression "(local_f4[1] - local_88) - (uint)(uVar21 < local_8c)" (parenthesized_expression "(local_f4[1] - local_88)" ( (binary_expression "local_f4[1] - local_88" (subscript_expression "local_f4[1]" identifier [ number_literal ]) - identifier) )) - (call_expression "(uint)(uVar21 < local_8c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar21 < local_8c)" ( (binary_expression "uVar21 < local_8c" identifier < identifier) ))))) ;) (if_statement "if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }" if (parenthesized_expression "(uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74))" ( (binary_expression "uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)" (binary_expression "uVar21 < local_70" identifier < identifier) || (binary_expression "uVar21 - local_70 < (uint)(uVar23 < local_74)" (binary_expression "uVar21 - local_70" identifier - identifier) < (call_expression "(uint)(uVar23 < local_74)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 < local_74)" ( (binary_expression "uVar23 < local_74" identifier < identifier) ))))) )) (compound_statement "{\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }" { (expression_statement "uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;" (assignment_expression "uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1" identifier = (binary_expression "*(uint *)((int)local_90 + uVar23 * 8) & 1" (pointer_expression "*(uint *)((int)local_90 + uVar23 * 8)" * (cast_expression "(uint *)((int)local_90 + uVar23 * 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_90 + uVar23 * 8)" ( (binary_expression "(int)local_90 + uVar23 * 8" (cast_expression "(int)local_90" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar23 * 8" identifier * number_literal)) )))) & number_literal)) ;) (if_statement "if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }" if (parenthesized_expression "(uVar12 == 0)" ( (binary_expression "uVar12 == 0" identifier == number_literal) )) (compound_statement "{\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }" { (expression_statement "uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;" (assignment_expression "uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1" identifier = (binary_expression "(lVar27 - *(longlong *)local_f4) + lVar26 + 1" (binary_expression "(lVar27 - *(longlong *)local_f4) + lVar26" (parenthesized_expression "(lVar27 - *(longlong *)local_f4)" ( (binary_expression "lVar27 - *(longlong *)local_f4" identifier - (pointer_expression "*(longlong *)local_f4" * (cast_expression "(longlong *)local_f4" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) + identifier) + number_literal)) ;) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" identifier = number_literal) ;) (expression_statement "uVar12 = 1;" (assignment_expression "uVar12 = 1" identifier = number_literal) ;) (do_statement "do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);" do (compound_statement "{\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              }" { (expression_statement "bVar25 = 0xfffffffe < uVar12;" (assignment_expression "bVar25 = 0xfffffffe < uVar12" identifier = (binary_expression "0xfffffffe < uVar12" number_literal < identifier)) ;) (expression_statement "uVar12 = uVar12 + 1;" (assignment_expression "uVar12 = uVar12 + 1" identifier = (binary_expression "uVar12 + 1" identifier + number_literal)) ;) (expression_statement "iVar9 = iVar9 + (uint)bVar25;" (assignment_expression "iVar9 = iVar9 + (uint)bVar25" identifier = (binary_expression "iVar9 + (uint)bVar25" identifier + (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "uVar21 = (uint)uVar7;" (assignment_expression "uVar21 = (uint)uVar7" identifier = (cast_expression "(uint)uVar7" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar8 = uVar7;" (assignment_expression "uVar8 = uVar7" identifier = identifier) ;) (if_statement "if (uVar7 == CONCAT44(iVar9,uVar12)) break;" if (parenthesized_expression "(uVar7 == CONCAT44(iVar9,uVar12))" ( (binary_expression "uVar7 == CONCAT44(iVar9,uVar12)" identifier == (call_expression "CONCAT44(iVar9,uVar12)" identifier (argument_list "(iVar9,uVar12)" ( identifier , identifier )))) )) (break_statement "break;" break ;)) (expression_statement "uVar21 = uVar12;" (assignment_expression "uVar21 = uVar12" identifier = identifier) ;) (expression_statement "uVar8 = CONCAT44(iVar9,uVar12);" (assignment_expression "uVar8 = CONCAT44(iVar9,uVar12)" identifier = (call_expression "CONCAT44(iVar9,uVar12)" identifier (argument_list "(iVar9,uVar12)" ( identifier , identifier )))) ;) }) while (parenthesized_expression "((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0)" ( (binary_expression "(*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0" (parenthesized_expression "(*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1)" ( (binary_expression "*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1" (pointer_expression "*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10)" * (cast_expression "(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10)" ( (binary_expression "(int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10" (binary_expression "(int)local_90 + (uVar23 + 1 + uVar12) * 8" (cast_expression "(int)local_90" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uVar23 + 1 + uVar12) * 8" (parenthesized_expression "(uVar23 + 1 + uVar12)" ( (binary_expression "uVar23 + 1 + uVar12" (binary_expression "uVar23 + 1" identifier + number_literal) + identifier) )) * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) ;) }) (else_clause "else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }" else (compound_statement "{\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }" { (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" identifier = number_literal) ;) (expression_statement "uVar8 = (ulonglong)uVar12;" (assignment_expression "uVar8 = (ulonglong)uVar12" identifier = (cast_expression "(ulonglong)uVar12" ( (type_descriptor "ulonglong" type_identifier) ) identifier)) ;) }))) }) (else_clause "else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }" else (compound_statement "{\n            uVar21 = 1;\n            uVar8 = 1;\n          }" { (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" identifier = number_literal) ;) (expression_statement "uVar8 = 1;" (assignment_expression "uVar8 = 1" identifier = number_literal) ;) }))) (expression_statement "local_58 = (int)(uVar8 >> 0x20);" (assignment_expression "local_58 = (int)(uVar8 >> 0x20)" identifier = (cast_expression "(int)(uVar8 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uVar8 >> 0x20)" ( (binary_expression "uVar8 >> 0x20" identifier >> number_literal) )))) ;) (expression_statement "local_5c = (uint)uVar8;" (assignment_expression "local_5c = (uint)uVar8" identifier = (cast_expression "(uint)uVar8" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "*local_dc = uVar21;" (assignment_expression "*local_dc = uVar21" (pointer_expression "*local_dc" * identifier) = identifier) ;) (if_statement "if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }" if (parenthesized_expression "(local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c))" ( (binary_expression "local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)" (binary_expression "local_58 != 0" identifier != number_literal) || (binary_expression "(uint)-local_58 < (uint)(local_cc < local_5c)" (binary_expression "(uint)-local_58" (parenthesized_expression "(uint)" ( identifier )) - identifier) < (call_expression "(uint)(local_cc < local_5c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_cc < local_5c)" ( (binary_expression "local_cc < local_5c" identifier < identifier) ))))) )) (compound_statement "{\n            local_cc = (void *)uVar21;\n          }" { (expression_statement "local_cc = (void *)uVar21;" (assignment_expression "local_cc = (void *)uVar21" identifier = (cast_expression "(void *)uVar21" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) })) (expression_statement "local_c4 = (uint *)((int)local_c4 + uVar21);" (assignment_expression "local_c4 = (uint *)((int)local_c4 + uVar21)" identifier = (cast_expression "(uint *)((int)local_c4 + uVar21)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_c4 + uVar21)" ( (binary_expression "(int)local_c4 + uVar21" (cast_expression "(int)local_c4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) })) (expression_statement "local_f4 = local_f4 + 2;" (assignment_expression "local_f4 = local_f4 + 2" identifier = (binary_expression "local_f4 + 2" identifier + number_literal)) ;) (expression_statement "local_dc = local_dc + 1;" (assignment_expression "local_dc = local_dc + 1" identifier = (binary_expression "local_dc + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_6c + local_54 * 2 != local_f4)" ( (binary_expression "local_6c + local_54 * 2 != local_f4" (binary_expression "local_6c + local_54 * 2" identifier + (binary_expression "local_54 * 2" identifier * number_literal)) != identifier) )) ;) (expression_statement "puVar13 = (uint *)calloc((int)local_cc + 1,4);" (assignment_expression "puVar13 = (uint *)calloc((int)local_cc + 1,4)" identifier = (cast_expression "(uint *)calloc((int)local_cc + 1,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "calloc((int)local_cc + 1,4)" identifier (argument_list "((int)local_cc + 1,4)" ( (binary_expression "(int)local_cc + 1" (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))))) ;) (if_statement "if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }" if (parenthesized_expression "(puVar13 != (uint *)0x0)" ( (binary_expression "puVar13 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }" { (expression_statement "puVar14 = puVar18;" (assignment_expression "puVar14 = puVar18" identifier = identifier) ;) (do_statement "do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);" do (compound_statement "{\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        }" { (expression_statement "uVar21 = *puVar14;" (assignment_expression "uVar21 = *puVar14" identifier = (pointer_expression "*puVar14" * identifier)) ;) (expression_statement "puVar14 = puVar14 + 1;" (assignment_expression "puVar14 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) (expression_statement "puVar13[uVar21] = puVar13[uVar21] + 1;" (assignment_expression "puVar13[uVar21] = puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" identifier [ identifier ]) = (binary_expression "puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" identifier [ identifier ]) + number_literal)) ;) }) while (parenthesized_expression "(puVar18 + local_54 != puVar14)" ( (binary_expression "puVar18 + local_54 != puVar14" (binary_expression "puVar18 + local_54" identifier + identifier) != identifier) )) ;) (expression_statement "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;" (assignment_expression "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54" identifier = (binary_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54" (parenthesized_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(double)*puVar13" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*puVar13" * identifier)) * (cast_expression "(double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) )))))) )) / (cast_expression "(double)(int)local_54" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_54" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) (expression_statement "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );" (call_expression "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" identifier (argument_list "((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" ( (cast_expression "(char *)(unaff_EBP + 0x48f47)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBP + 0x48f47)" ( (binary_expression "unaff_EBP + 0x48f47" identifier + number_literal) ))) , (pointer_expression "*puVar13" * identifier) , (call_expression "SUB84(dVar3,0)" identifier (argument_list "(dVar3,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" ( (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (if_statement "if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" if (parenthesized_expression "(local_cc != (void *)0x0)" ( (binary_expression "local_cc != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" { (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;) (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" identifier = number_literal) ;) (do_statement "do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);" do (compound_statement "{\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          }" { (expression_statement "uVar12 = puVar13[uVar21];" (assignment_expression "uVar12 = puVar13[uVar21]" identifier = (subscript_expression "puVar13[uVar21]" identifier [ identifier ])) ;) (expression_statement "uVar23 = uVar23 + uVar12 * uVar21;" (assignment_expression "uVar23 = uVar23 + uVar12 * uVar21" identifier = (binary_expression "uVar23 + uVar12 * uVar21" identifier + (binary_expression "uVar12 * uVar21" identifier * identifier))) ;) (expression_statement "dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);" (assignment_expression "dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4)" identifier = (cast_expression "(double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4)" ( (binary_expression "((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4" (parenthesized_expression "((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar23" ( (type_descriptor "float" primitive_type) ) identifier) * (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) ))))) )) / (cast_expression "(float)local_c4" ( (type_descriptor "float" primitive_type) ) identifier)) )))) ;) (expression_statement "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));" (call_expression "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" identifier (argument_list "(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" ( (binary_expression "&UNK_00050f4a + unaff_EBP" (pointer_expression "&UNK_00050f4a" & identifier) + identifier) , identifier , identifier , (cast_expression "(double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54)" ( (binary_expression "((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54" (parenthesized_expression "((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" ( (binary_expression "(float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar12" ( (type_descriptor "float" primitive_type) ) identifier) * (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" * (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" ( (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" & identifier) + identifier) ))))) )) / (cast_expression "(float)(int)local_54" ( (type_descriptor "float" primitive_type) ) (cast_expression "(int)local_54" ( (type_descriptor "int" primitive_type) ) identifier))) ))) , (call_expression "SUB84(dVar3,0)" identifier (argument_list "(dVar3,0)" ( identifier , number_literal ))) , (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" ( (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ))) ;) (expression_statement "bVar25 = local_cc != (void *)uVar21;" (assignment_expression "bVar25 = local_cc != (void *)uVar21" identifier = (binary_expression "local_cc != (void *)uVar21" identifier != (cast_expression "(void *)uVar21" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" identifier = (binary_expression "uVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) })) (labeled_statement "LAB_000331cb:\n        free(puVar13);" statement_identifier : (expression_statement "free(puVar13);" (call_expression "free(puVar13)" identifier (argument_list "(puVar13)" ( identifier ))) ;)) (expression_statement "free(puVar18);" (call_expression "free(puVar18)" identifier (argument_list "(puVar18)" ( identifier ))) ;) (expression_statement "free(local_6c);" (call_expression "free(local_6c)" identifier (argument_list "(local_6c)" ( identifier ))) ;) (expression_statement "free(local_90);" (call_expression "free(local_90)" identifier (argument_list "(local_90)" ( identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) }))) (expression_statement "free(puVar18);" (call_expression "free(puVar18)" identifier (argument_list "(puVar18)" ( identifier ))) ;) })) (labeled_statement "LAB_00034166:\n  dcgettext();" statement_identifier : (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;)) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (return_statement "return 0;" return number_literal ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE 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 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 IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * 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 (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 (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT) && (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == 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 (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) || (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + 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 (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) || (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (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 = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (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 = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) )) (compound_statement { (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 (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_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 ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content ") + IDENT) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ (binary_expression IDENT * LIT) ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ (binary_expression (binary_expression IDENT * LIT) + LIT) ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT <= IDENT) && (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) <= (binary_expression IDENT - IDENT))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) != (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (break_statement break ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression IDENT * LIT)) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression IDENT * LIT)) ))))) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) || (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content ") + IDENT) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ (binary_expression IDENT * LIT) ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ (binary_expression (binary_expression IDENT * LIT) + LIT) ]) != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ (binary_expression (binary_expression IDENT * LIT) + LIT) ]) - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) ;) (do_statement do (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT <= IDENT) && (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) <= (binary_expression IDENT - IDENT))) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression LIT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression IDENT * LIT)) + LIT) )))) & LIT) )) == LIT) )) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (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) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (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 { (expression_statement (assignment_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 (binary_expression (string_literal " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (do_statement do (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 (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != 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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) && (binary_expression IDENT == LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) }) (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) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (binary_expression (pointer_expression & IDENT) + IDENT) , (binary_expression (pointer_expression & IDENT) + IDENT) , (subscript_expression IDENT [ LIT ]) , LIT , IDENT , IDENT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content ") + IDENT) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content ") + IDENT) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (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 == (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 * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (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 { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression IDENT * LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , 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) )))) , IDENT , IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (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 (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (do_statement do (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression & IDENT) + IDENT) , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (parenthesized_expression ( (binary_expression IDENT & LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) , IDENT ))) ;) })) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression & IDENT) + IDENT) , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , (binary_expression IDENT + LIT) , IDENT , (pointer_expression & IDENT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }))) })) (expression_statement (call_expression IDENT (argument_list ( LIT , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT) ))) == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression IDENT <= IDENT)) ))) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier short) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) ))) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < (subscript_expression IDENT [ LIT ])) )) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) })) }))) })) (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) ))))) )) ;) }))) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) + IDENT)) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (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 , (binary_expression (pointer_expression & IDENT) + IDENT) , (binary_expression (pointer_expression & IDENT) + IDENT) , IDENT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (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 , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression (pointer_expression * IDENT) == LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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 * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT <= IDENT) && (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) <= (binary_expression IDENT - IDENT))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) != (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression IDENT * LIT)) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) }))) (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 (binary_expression IDENT + (binary_expression IDENT * LIT)) != IDENT) )) ;) (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 ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ IDENT ]) = (binary_expression (subscript_expression IDENT [ IDENT ]) + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT + IDENT) != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT)) * (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))))) )) / (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) , (pointer_expression * IDENT) , (call_expression IDENT (argument_list ( IDENT , LIT ))) , (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ IDENT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (binary_expression IDENT * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) ))))) )) / (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression & IDENT) + IDENT) , IDENT , IDENT , (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) ))))) )) / (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ))) , (call_expression IDENT (argument_list ( IDENT , LIT ))) , (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) })) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (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 (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (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 (binary_expression IDENT == LIT) || (binary_expression IDENT == LIT)) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) ))) * LIT) + LIT)) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) , LIT )))) ;) (if_statement if (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 ( IDENT , IDENT , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) , (binary_expression IDENT == LIT)) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) ))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) ))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) && (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ))) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) )) (compound_statement { (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 (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + 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 (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 = LIT) ;) (labeled_statement statement_identifier : (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 (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT) ))) )) (goto_statement goto statement_identifier ;))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 = LIT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement 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 *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT) && (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT)) )) (goto_statement goto statement_identifier ;))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT , (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ (binary_expression IDENT * LIT) ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )) [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT < IDENT) || (binary_expression (binary_expression IDENT - IDENT) < (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) )) (compound_statement { (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT < IDENT) || (binary_expression (binary_expression IDENT - IDENT) < (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) )) || (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (expression_statement (assignment_expression IDENT = (binary_expression LIT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (call_expression IDENT (argument_list ( IDENT , IDENT )))) )) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT , (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 ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & IDENT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression LIT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) )) (argument_list ( )))) ;) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (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)) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (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 (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) || (binary_expression IDENT != LIT)) )) || (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) || (binary_expression IDENT != 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 (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) )) (goto_statement goto statement_identifier ;))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + IDENT) + LIT) )))) != LIT) )) (goto_statement goto statement_identifier ;)) (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) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content escape_sequence ") + 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 == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (return_statement return LIT ;) }))) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (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 = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (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 , (binary_expression (pointer_expression & IDENT) + IDENT) , (binary_expression (pointer_expression & IDENT) + IDENT) , IDENT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (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 , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT < IDENT) || (binary_expression (binary_expression IDENT - IDENT) < (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression IDENT * LIT)) )))) & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression LIT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (call_expression IDENT (argument_list ( IDENT , IDENT )))) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )) * LIT)) + LIT) )))) & LIT) )) == LIT) )) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }))) }) (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) ) (parenthesized_expression ( (binary_expression IDENT >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression (binary_expression (parenthesized_expression ( IDENT )) - IDENT) < (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ IDENT ]) = (binary_expression (subscript_expression IDENT [ IDENT ]) + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT + IDENT) != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT)) * (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))))) )) / (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) , (pointer_expression * IDENT) , (call_expression IDENT (argument_list ( IDENT , LIT ))) , (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ IDENT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (binary_expression IDENT * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) ))))) )) / (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression & IDENT) + IDENT) , IDENT , IDENT , (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) ))))) )) / (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ))) , (call_expression IDENT (argument_list ( IDENT , LIT ))) , (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) })) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (return_statement return LIT ;) })) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (return_statement return LIT ;) })))
(function_definition "undefined4 FUN_00032cd0(void)\n\n{\n  undefined4 *puVar1;\n  int iVar2;\n  double dVar3;\n  byte bVar4;\n  short sVar5;\n  uint uVar6;\n  ulonglong uVar7;\n  ulonglong uVar8;\n  int iVar9;\n  int iVar10;\n  size_t sVar11;\n  uint uVar12;\n  uint *puVar13;\n  uint *puVar14;\n  void *pvVar15;\n  uint uVar16;\n  char *pcVar17;\n  uint *puVar18;\n  undefined4 uVar19;\n  size_t sVar20;\n  uint uVar21;\n  uint uVar22;\n  char *__format;\n  int unaff_EBP;\n  uint uVar23;\n  uint uVar24;\n  bool bVar25;\n  longlong lVar26;\n  longlong lVar27;\n  longlong lVar28;\n  longlong lVar29;\n  undefined4 uVar30;\n  undefined *puVar31;\n  undefined4 uVar32;\n  uint *local_f4;\n  uint local_ec;\n  uint uStack_e8;\n  uint local_e0;\n  uint *local_dc;\n  uint local_d4;\n  void *local_cc;\n  uint *local_c4;\n  void *local_bc;\n  uint *local_b4;\n  uint local_b0;\n  void *local_90;\n  uint local_8c;\n  int local_88;\n  void *local_80;\n  size_t local_7c;\n  uint *local_78;\n  uint local_74;\n  uint local_70;\n  uint *local_6c;\n  uint local_5c;\n  int local_58;\n  uint local_54;\n  int local_50;\n  ushort local_36;\n  uint local_34 [2];\n  int local_2c [7];\n  \n  iVar9 = FUN_0004ab89();\n  if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }\n  local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n  local_74 = (uint)lVar26;\n  local_88 = (int)((ulonglong)lVar27 >> 0x20);\n  local_8c = (uint)lVar27;\n  if (local_6c == (uint *)0x0) {\n    return 1;\n  }\n  if (iVar9 == 0) {\n    return 1;\n  }\n  pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);\n  printf(pcVar17,local_54);\n  puVar18 = (uint *)calloc(local_54,4);\n  if (puVar18 != (uint *)0x0) {\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }\nLAB_00034166:\n  dcgettext();\n  error();\n  return 0;\n}" (type_identifier "undefined4") (function_declarator "FUN_00032cd0(void)" (identifier "FUN_00032cd0") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  undefined4 *puVar1;\n  int iVar2;\n  double dVar3;\n  byte bVar4;\n  short sVar5;\n  uint uVar6;\n  ulonglong uVar7;\n  ulonglong uVar8;\n  int iVar9;\n  int iVar10;\n  size_t sVar11;\n  uint uVar12;\n  uint *puVar13;\n  uint *puVar14;\n  void *pvVar15;\n  uint uVar16;\n  char *pcVar17;\n  uint *puVar18;\n  undefined4 uVar19;\n  size_t sVar20;\n  uint uVar21;\n  uint uVar22;\n  char *__format;\n  int unaff_EBP;\n  uint uVar23;\n  uint uVar24;\n  bool bVar25;\n  longlong lVar26;\n  longlong lVar27;\n  longlong lVar28;\n  longlong lVar29;\n  undefined4 uVar30;\n  undefined *puVar31;\n  undefined4 uVar32;\n  uint *local_f4;\n  uint local_ec;\n  uint uStack_e8;\n  uint local_e0;\n  uint *local_dc;\n  uint local_d4;\n  void *local_cc;\n  uint *local_c4;\n  void *local_bc;\n  uint *local_b4;\n  uint local_b0;\n  void *local_90;\n  uint local_8c;\n  int local_88;\n  void *local_80;\n  size_t local_7c;\n  uint *local_78;\n  uint local_74;\n  uint local_70;\n  uint *local_6c;\n  uint local_5c;\n  int local_58;\n  uint local_54;\n  int local_50;\n  ushort local_36;\n  uint local_34 [2];\n  int local_2c [7];\n  \n  iVar9 = FUN_0004ab89();\n  if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }\n  local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n  local_74 = (uint)lVar26;\n  local_88 = (int)((ulonglong)lVar27 >> 0x20);\n  local_8c = (uint)lVar27;\n  if (local_6c == (uint *)0x0) {\n    return 1;\n  }\n  if (iVar9 == 0) {\n    return 1;\n  }\n  pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);\n  printf(pcVar17,local_54);\n  puVar18 = (uint *)calloc(local_54,4);\n  if (puVar18 != (uint *)0x0) {\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }\nLAB_00034166:\n  dcgettext();\n  error();\n  return 0;\n}" ({ "{") (declaration "undefined4 *puVar1;" (type_identifier "undefined4") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "double dVar3;" (primitive_type "double") (identifier "dVar3") (; ";")) (declaration "byte bVar4;" (type_identifier "byte") (identifier "bVar4") (; ";")) (declaration "short sVar5;" (sized_type_specifier "short" (short "short")) (identifier "sVar5") (; ";")) (declaration "uint uVar6;" (type_identifier "uint") (identifier "uVar6") (; ";")) (declaration "ulonglong uVar7;" (type_identifier "ulonglong") (identifier "uVar7") (; ";")) (declaration "ulonglong uVar8;" (type_identifier "ulonglong") (identifier "uVar8") (; ";")) (declaration "int iVar9;" (primitive_type "int") (identifier "iVar9") (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "size_t sVar11;" (primitive_type "size_t") (identifier "sVar11") (; ";")) (declaration "uint uVar12;" (type_identifier "uint") (identifier "uVar12") (; ";")) (declaration "uint *puVar13;" (type_identifier "uint") (pointer_declarator "*puVar13" (* "*") (identifier "puVar13")) (; ";")) (declaration "uint *puVar14;" (type_identifier "uint") (pointer_declarator "*puVar14" (* "*") (identifier "puVar14")) (; ";")) (declaration "void *pvVar15;" (primitive_type "void") (pointer_declarator "*pvVar15" (* "*") (identifier "pvVar15")) (; ";")) (declaration "uint uVar16;" (type_identifier "uint") (identifier "uVar16") (; ";")) (declaration "char *pcVar17;" (primitive_type "char") (pointer_declarator "*pcVar17" (* "*") (identifier "pcVar17")) (; ";")) (declaration "uint *puVar18;" (type_identifier "uint") (pointer_declarator "*puVar18" (* "*") (identifier "puVar18")) (; ";")) (declaration "undefined4 uVar19;" (type_identifier "undefined4") (identifier "uVar19") (; ";")) (declaration "size_t sVar20;" (primitive_type "size_t") (identifier "sVar20") (; ";")) (declaration "uint uVar21;" (type_identifier "uint") (identifier "uVar21") (; ";")) (declaration "uint uVar22;" (type_identifier "uint") (identifier "uVar22") (; ";")) (declaration "char *__format;" (primitive_type "char") (pointer_declarator "*__format" (* "*") (identifier "__format")) (; ";")) (declaration "int unaff_EBP;" (primitive_type "int") (identifier "unaff_EBP") (; ";")) (declaration "uint uVar23;" (type_identifier "uint") (identifier "uVar23") (; ";")) (declaration "uint uVar24;" (type_identifier "uint") (identifier "uVar24") (; ";")) (declaration "bool bVar25;" (primitive_type "bool") (identifier "bVar25") (; ";")) (declaration "longlong lVar26;" (type_identifier "longlong") (identifier "lVar26") (; ";")) (declaration "longlong lVar27;" (type_identifier "longlong") (identifier "lVar27") (; ";")) (declaration "longlong lVar28;" (type_identifier "longlong") (identifier "lVar28") (; ";")) (declaration "longlong lVar29;" (type_identifier "longlong") (identifier "lVar29") (; ";")) (declaration "undefined4 uVar30;" (type_identifier "undefined4") (identifier "uVar30") (; ";")) (declaration "undefined *puVar31;" (type_identifier "undefined") (pointer_declarator "*puVar31" (* "*") (identifier "puVar31")) (; ";")) (declaration "undefined4 uVar32;" (type_identifier "undefined4") (identifier "uVar32") (; ";")) (declaration "uint *local_f4;" (type_identifier "uint") (pointer_declarator "*local_f4" (* "*") (identifier "local_f4")) (; ";")) (declaration "uint local_ec;" (type_identifier "uint") (identifier "local_ec") (; ";")) (declaration "uint uStack_e8;" (type_identifier "uint") (identifier "uStack_e8") (; ";")) (declaration "uint local_e0;" (type_identifier "uint") (identifier "local_e0") (; ";")) (declaration "uint *local_dc;" (type_identifier "uint") (pointer_declarator "*local_dc" (* "*") (identifier "local_dc")) (; ";")) (declaration "uint local_d4;" (type_identifier "uint") (identifier "local_d4") (; ";")) (declaration "void *local_cc;" (primitive_type "void") (pointer_declarator "*local_cc" (* "*") (identifier "local_cc")) (; ";")) (declaration "uint *local_c4;" (type_identifier "uint") (pointer_declarator "*local_c4" (* "*") (identifier "local_c4")) (; ";")) (declaration "void *local_bc;" (primitive_type "void") (pointer_declarator "*local_bc" (* "*") (identifier "local_bc")) (; ";")) (declaration "uint *local_b4;" (type_identifier "uint") (pointer_declarator "*local_b4" (* "*") (identifier "local_b4")) (; ";")) (declaration "uint local_b0;" (type_identifier "uint") (identifier "local_b0") (; ";")) (declaration "void *local_90;" (primitive_type "void") (pointer_declarator "*local_90" (* "*") (identifier "local_90")) (; ";")) (declaration "uint local_8c;" (type_identifier "uint") (identifier "local_8c") (; ";")) (declaration "int local_88;" (primitive_type "int") (identifier "local_88") (; ";")) (declaration "void *local_80;" (primitive_type "void") (pointer_declarator "*local_80" (* "*") (identifier "local_80")) (; ";")) (declaration "size_t local_7c;" (primitive_type "size_t") (identifier "local_7c") (; ";")) (declaration "uint *local_78;" (type_identifier "uint") (pointer_declarator "*local_78" (* "*") (identifier "local_78")) (; ";")) (declaration "uint local_74;" (type_identifier "uint") (identifier "local_74") (; ";")) (declaration "uint local_70;" (type_identifier "uint") (identifier "local_70") (; ";")) (declaration "uint *local_6c;" (type_identifier "uint") (pointer_declarator "*local_6c" (* "*") (identifier "local_6c")) (; ";")) (declaration "uint local_5c;" (type_identifier "uint") (identifier "local_5c") (; ";")) (declaration "int local_58;" (primitive_type "int") (identifier "local_58") (; ";")) (declaration "uint local_54;" (type_identifier "uint") (identifier "local_54") (; ";")) (declaration "int local_50;" (primitive_type "int") (identifier "local_50") (; ";")) (declaration "ushort local_36;" (type_identifier "ushort") (identifier "local_36") (; ";")) (declaration "uint local_34 [2];" (type_identifier "uint") (array_declarator "local_34 [2]" (identifier "local_34") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "int local_2c [7];" (primitive_type "int") (array_declarator "local_2c [7]" (identifier "local_2c") ([ "[") (number_literal "7") (] "]")) (; ";")) (expression_statement "iVar9 = FUN_0004ab89();" (assignment_expression "iVar9 = FUN_0004ab89()" (identifier "iVar9") (= "=") (call_expression "FUN_0004ab89()" (identifier "FUN_0004ab89") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }\n  else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&\n      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x2e")) () ")")))) (== "==") (number_literal "0")) (&& "&&") (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (( "(") (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" (" """) (string_content "Unknown section relocation type %d encountered") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")")))) (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;\n    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar28 = lVar29;\nLAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    uVar21 = *puVar18;\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar26 = *(longlong *)puVar18;\n    lVar27 = *(longlong *)puVar18;\n    if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }\nLAB_000332bc:\n    lVar27 = 0;\n    local_90 = (void *)0x0;\n    local_6c = (uint *)0x0;\n    local_54 = 0;\n    local_50 = 0;\n    lVar26 = 0;\nLAB_000333c0:\n    local_7c = (size_t)lVar28;\n    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    local_70 = (uint)((ulonglong)lVar26 >> 0x20);\n    local_74 = (uint)lVar26;\n    local_88 = (int)((ulonglong)lVar27 >> 0x20);\n    local_8c = (uint)lVar27;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;\nLAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);\n    if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;\nLAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 == 0) goto LAB_000337f0;\nLAB_00033426:\n    local_7c = (size_t)lVar28;\n    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);\n    local_e0 = (uint)lVar29;\n    if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }\n  }" ({ "{") (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      return 1;\n    }" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      return 1;\n    }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (identifier "lVar28") (= "=") (pointer_expression "*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (* "*") (cast_expression "(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (type_descriptor "longlong *" (type_identifier "longlong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x1e")) () ")"))))) (; ";")) (if_statement "if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)\n    goto LAB_00033f90;" (if "if") (parenthesized_expression "(*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)" (( "(") (binary_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||\n        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0" (binary_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0" (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (* "*") (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x22")) () ")")))) (!= "!=") (number_literal "0")) (|| "||") (binary_expression "(int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0" (cast_expression "(int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (* "*") (cast_expression "(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (type_descriptor "longlong *" (type_identifier "longlong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x1e")) () ")"))))) (!= "!=") (number_literal "0"))) () ")")) (goto_statement "goto LAB_00033f90;" (goto "goto") (statement_identifier "LAB_00033f90") (; ";"))) (expression_statement "lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);" (assignment_expression "lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (identifier "lVar29") (= "=") (pointer_expression "*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (* "*") (cast_expression "(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (type_descriptor "longlong *" (type_identifier "longlong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "10")) () ")"))))) (; ";")) (if_statement "if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (* "*") (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0xe")) () ")")))) (!= "!=") (number_literal "0")) (|| "||") (binary_expression "(int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (cast_expression "(int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (* "*") (cast_expression "(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (type_descriptor "longlong *" (type_identifier "longlong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "10")) () ")"))))) (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar29 = lVar28;\n      goto LAB_00032d84;\n    }" ({ "{") (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" (identifier "local_cc") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" (identifier "local_78") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "lVar29 = lVar28;" (assignment_expression "lVar29 = lVar28" (identifier "lVar29") (= "=") (identifier "lVar28")) (; ";")) (goto_statement "goto LAB_00032d84;" (goto "goto") (statement_identifier "LAB_00032d84") (; ";")) (} "}"))) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" (identifier "local_cc") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" (identifier "local_78") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "lVar28 = lVar29;" (assignment_expression "lVar28 = lVar29" (identifier "lVar28") (= "=") (identifier "lVar29")) (; ";")) (labeled_statement "LAB_00033740:\n    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (statement_identifier "LAB_00033740") (: ":") (expression_statement "puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (identifier "puVar18") (= "=") (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x1e")) () ")")))) (; ";"))) (expression_statement "uVar21 = *puVar18;" (assignment_expression "uVar21 = *puVar18" (identifier "uVar21") (= "=") (pointer_expression "*puVar18" (* "*") (identifier "puVar18"))) (; ";")) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (* "*") (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x22")) () ")"))))) (; ";")) (expression_statement "lVar26 = *(longlong *)puVar18;" (assignment_expression "lVar26 = *(longlong *)puVar18" (identifier "lVar26") (= "=") (pointer_expression "*(longlong *)puVar18" (* "*") (cast_expression "(longlong *)puVar18" (( "(") (type_descriptor "longlong *" (type_identifier "longlong") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar18")))) (; ";")) (expression_statement "lVar27 = *(longlong *)puVar18;" (assignment_expression "lVar27 = *(longlong *)puVar18" (identifier "lVar27") (= "=") (pointer_expression "*(longlong *)puVar18" (* "*") (cast_expression "(longlong *)puVar18" (( "(") (type_descriptor "longlong *" (type_identifier "longlong") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar18")))) (; ";")) (if_statement "if (uVar21 == 0 && iVar10 == 0) {\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }" (if "if") (parenthesized_expression "(uVar21 == 0 && iVar10 == 0)" (( "(") (binary_expression "uVar21 == 0 && iVar10 == 0" (binary_expression "uVar21 == 0" (identifier "uVar21") (== "==") (number_literal "0")) (&& "&&") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = uVar21;\n      local_50 = iVar10;\n      goto LAB_0003378f;\n    }" ({ "{") (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" (identifier "local_90") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" (identifier "local_6c") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_54 = uVar21;" (assignment_expression "local_54 = uVar21" (identifier "local_54") (= "=") (identifier "uVar21")) (; ";")) (expression_statement "local_50 = iVar10;" (assignment_expression "local_50 = iVar10" (identifier "local_50") (= "=") (identifier "iVar10")) (; ";")) (goto_statement "goto LAB_0003378f;" (goto "goto") (statement_identifier "LAB_0003378f") (; ";")) (} "}"))) (labeled_statement "LAB_000332bc:\n    lVar27 = 0;" (statement_identifier "LAB_000332bc") (: ":") (expression_statement "lVar27 = 0;" (assignment_expression "lVar27 = 0" (identifier "lVar27") (= "=") (number_literal "0")) (; ";"))) (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" (identifier "local_90") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" (identifier "local_6c") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" (identifier "local_54") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" (identifier "local_50") (= "=") (number_literal "0")) (; ";")) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" (identifier "lVar26") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_000333c0:\n    local_7c = (size_t)lVar28;" (statement_identifier "LAB_000333c0") (: ":") (expression_statement "local_7c = (size_t)lVar28;" (assignment_expression "local_7c = (size_t)lVar28" (identifier "local_7c") (= "=") (cast_expression "(size_t)lVar28" (( "(") (type_descriptor "size_t" (primitive_type "size_t")) () ")") (identifier "lVar28"))) (; ";"))) (expression_statement "uVar23 = (uint)((ulonglong)lVar29 >> 0x20);" (assignment_expression "uVar23 = (uint)((ulonglong)lVar29 >> 0x20)" (identifier "uVar23") (= "=") (call_expression "(uint)((ulonglong)lVar29 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)lVar29 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar29")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "local_e0 = (uint)lVar29;" (assignment_expression "local_e0 = (uint)lVar29" (identifier "local_e0") (= "=") (cast_expression "(uint)lVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar29"))) (; ";")) (expression_statement "local_70 = (uint)((ulonglong)lVar26 >> 0x20);" (assignment_expression "local_70 = (uint)((ulonglong)lVar26 >> 0x20)" (identifier "local_70") (= "=") (call_expression "(uint)((ulonglong)lVar26 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)lVar26 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar26 >> 0x20" (cast_expression "(ulonglong)lVar26" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar26")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "local_74 = (uint)lVar26;" (assignment_expression "local_74 = (uint)lVar26" (identifier "local_74") (= "=") (cast_expression "(uint)lVar26" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar26"))) (; ";")) (expression_statement "local_88 = (int)((ulonglong)lVar27 >> 0x20);" (assignment_expression "local_88 = (int)((ulonglong)lVar27 >> 0x20)" (identifier "local_88") (= "=") (cast_expression "(int)((ulonglong)lVar27 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar27 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar27 >> 0x20" (cast_expression "(ulonglong)lVar27" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar27")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "local_8c = (uint)lVar27;" (assignment_expression "local_8c = (uint)lVar27" (identifier "local_8c") (= "=") (cast_expression "(uint)lVar27" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar27"))) (; ";")) (if_statement "if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_0003378f;" (if "if") (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)" (( "(") (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (( "(") (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" (" """) (string_content "Unknown section relocation type %d encountered") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0003378f;" (goto "goto") (statement_identifier "LAB_0003378f") (; ";"))) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x12")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }\n      if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }\n      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }\n      goto LAB_00033418;\n    }" ({ "{") (if_statement "if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }" (if "if") (parenthesized_expression "((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0))" (( "(") (binary_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||\n         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)" (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0)" (( "(") (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" (* "*") (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" (( "(") (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 0xe" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" (" """) (string_content "  Version:                           0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0xe")) () ")")))) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)" (( "(") (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 2)" (( "(") (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 2" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" (" """) (string_content "  Version:                           0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")")))) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;\n        goto LAB_000337b9;\n      }" ({ "{") (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n        goto LAB_00033a30;" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x2e")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00033a30;" (goto "goto") (statement_identifier "LAB_00033a30") (; ";"))) (goto_statement "goto LAB_000337b9;" (goto "goto") (statement_identifier "LAB_000337b9") (; ";")) (} "}"))) (if_statement "if (iVar10 != 0 || uVar21 != 0) {\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }" (if "if") (parenthesized_expression "(iVar10 != 0 || uVar21 != 0)" (( "(") (binary_expression "iVar10 != 0 || uVar21 != 0" (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "uVar21 != 0" (identifier "uVar21") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n        iVar9 = unaff_EBP + 0x48efc;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,iVar9,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        pvVar15 = (void *)FUN_0005da70();\n        memset(pvVar15,0,local_e0);\n        if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }\n        free(pvVar15);\n      }" ({ "{") (expression_statement "iVar9 = unaff_EBP + 0x48efc;" (assignment_expression "iVar9 = unaff_EBP + 0x48efc" (identifier "iVar9") (= "=") (binary_expression "unaff_EBP + 0x48efc" (identifier "unaff_EBP") (+ "+") (number_literal "0x48efc"))) (; ";")) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" (identifier "uVar32") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,iVar9,uVar32);" (call_expression "printf(pcVar17,iVar9,uVar32)" (identifier "printf") (argument_list "(pcVar17,iVar9,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "iVar9") (, ",") (identifier "uVar32") () ")"))) (; ";")) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" (if "if") (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" (( "(") (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (* "*") (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (( "(") (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" (" """) (string_content "<corrupt string table index: %3ld>") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x12")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" ({ "{") (expression_statement "puVar31 = &UNK_00050c3e + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c3e + unaff_EBP" (identifier "puVar31") (= "=") (binary_expression "&UNK_00050c3e + unaff_EBP" (pointer_expression "&UNK_00050c3e" (& "&") (identifier "UNK_00050c3e")) (+ "+") (identifier "unaff_EBP"))) (; ";")) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" (identifier "uVar32") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" (identifier "printf") (argument_list "(pcVar17,puVar31,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "puVar31") (, ",") (identifier "uVar32") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" (else "else") (compound_statement "{\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" ({ "{") (expression_statement "puVar31 = &UNK_00050c02 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c02 + unaff_EBP" (identifier "puVar31") (= "=") (binary_expression "&UNK_00050c02 + unaff_EBP" (pointer_expression "&UNK_00050c02" (& "&") (identifier "UNK_00050c02")) (+ "+") (identifier "unaff_EBP"))) (; ";")) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" (identifier "uVar32") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" (identifier "printf") (argument_list "(pcVar17,puVar31,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "puVar31") (, ",") (identifier "uVar32") () ")"))) (; ";")) (} "}")))) (expression_statement "pvVar15 = (void *)FUN_0005da70();" (assignment_expression "pvVar15 = (void *)FUN_0005da70()" (identifier "pvVar15") (= "=") (cast_expression "(void *)FUN_0005da70()" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0005da70()" (identifier "FUN_0005da70") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "memset(pvVar15,0,local_e0);" (call_expression "memset(pvVar15,0,local_e0)" (identifier "memset") (argument_list "(pvVar15,0,local_e0)" (( "(") (identifier "pvVar15") (, ",") (number_literal "0") (, ",") (identifier "local_e0") () ")"))) (; ";")) (if_statement "if (lVar28 != 0) {\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }" (if "if") (parenthesized_expression "(lVar28 != 0)" (( "(") (binary_expression "lVar28 != 0" (identifier "lVar28") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          local_ec = 0;\n          do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);\n        }" ({ "{") (expression_statement "local_ec = 0;" (assignment_expression "local_ec = 0" (identifier "local_ec") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          } while (local_7c != local_ec);" (do "do") (compound_statement "{\n            uVar21 = local_78[local_ec * 2];\n            uVar12 = local_78[local_ec * 2 + 1];\n            if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }\n            local_ec = local_ec + 1;\n          }" ({ "{") (expression_statement "uVar21 = local_78[local_ec * 2];" (assignment_expression "uVar21 = local_78[local_ec * 2]" (identifier "uVar21") (= "=") (subscript_expression "local_78[local_ec * 2]" (identifier "local_78") ([ "[") (binary_expression "local_ec * 2" (identifier "local_ec") (* "*") (number_literal "2")) (] "]"))) (; ";")) (expression_statement "uVar12 = local_78[local_ec * 2 + 1];" (assignment_expression "uVar12 = local_78[local_ec * 2 + 1]" (identifier "uVar12") (= "=") (subscript_expression "local_78[local_ec * 2 + 1]" (identifier "local_78") ([ "[") (binary_expression "local_ec * 2 + 1" (binary_expression "local_ec * 2" (identifier "local_ec") (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]"))) (; ";")) (if_statement "if (uVar12 != 0 || uVar21 != 0) {\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }" (if "if") (parenthesized_expression "(uVar12 != 0 || uVar21 != 0)" (( "(") (binary_expression "uVar12 != 0 || uVar21 != 0" (binary_expression "uVar12 != 0" (identifier "uVar12") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "uVar21 != 0" (identifier "uVar21") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n              do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);\n            }" ({ "{") (do_statement "do {\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              } while (uVar12 != 0 || uVar21 != 0);" (do "do") (compound_statement "{\n                FUN_00032a90();\n                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }\n                *(char *)((int)pvVar15 + uVar21) = '\x01';\n                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);\n                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);\n              }" ({ "{") (expression_statement "FUN_00032a90();" (call_expression "FUN_00032a90()" (identifier "FUN_00032a90") (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {\n                  dcgettext();\n                  error();\n                  break;\n                }" (if "if") (parenthesized_expression "((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0'))" (( "(") (binary_expression "(uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||\n                   (*(char *)((int)pvVar15 + uVar21) != '\0')" (parenthesized_expression "(uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23)" (( "(") (binary_expression "uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23" (binary_expression "uVar23 <= uVar12" (identifier "uVar23") (<= "<=") (identifier "uVar12")) (&& "&&") (binary_expression "(uint)(uVar21 < local_e0) <= uVar12 - uVar23" (call_expression "(uint)(uVar21 < local_e0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar21 < local_e0)" (( "(") (binary_expression "uVar21 < local_e0" (identifier "uVar21") (< "<") (identifier "local_e0")) () ")"))) (<= "<=") (binary_expression "uVar12 - uVar23" (identifier "uVar12") (- "-") (identifier "uVar23")))) () ")")) (|| "||") (parenthesized_expression "(*(char *)((int)pvVar15 + uVar21) != '\0')" (( "(") (binary_expression "*(char *)((int)pvVar15 + uVar21) != '\0'" (pointer_expression "*(char *)((int)pvVar15 + uVar21)" (* "*") (cast_expression "(char *)((int)pvVar15 + uVar21)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pvVar15 + uVar21)" (( "(") (binary_expression "(int)pvVar15 + uVar21" (cast_expression "(int)pvVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pvVar15")) (+ "+") (identifier "uVar21")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                  dcgettext();\n                  error();\n                  break;\n                }" ({ "{") (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "*(char *)((int)pvVar15 + uVar21) = '\x01';" (assignment_expression "*(char *)((int)pvVar15 + uVar21) = '\x01'" (pointer_expression "*(char *)((int)pvVar15 + uVar21)" (* "*") (cast_expression "(char *)((int)pvVar15 + uVar21)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pvVar15 + uVar21)" (( "(") (binary_expression "(int)pvVar15 + uVar21" (cast_expression "(int)pvVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pvVar15")) (+ "+") (identifier "uVar21")) () ")")))) (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);" (assignment_expression "uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4)" (identifier "uVar12") (= "=") (pointer_expression "*(uint *)((int)local_cc + uVar21 * 8 + 4)" (* "*") (cast_expression "(uint *)((int)local_cc + uVar21 * 8 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_cc + uVar21 * 8 + 4)" (( "(") (binary_expression "(int)local_cc + uVar21 * 8 + 4" (binary_expression "(int)local_cc + uVar21 * 8" (cast_expression "(int)local_cc" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_cc")) (+ "+") (binary_expression "uVar21 * 8" (identifier "uVar21") (* "*") (number_literal "8"))) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "uVar21 = *(uint *)((int)local_cc + uVar21 * 8);" (assignment_expression "uVar21 = *(uint *)((int)local_cc + uVar21 * 8)" (identifier "uVar21") (= "=") (pointer_expression "*(uint *)((int)local_cc + uVar21 * 8)" (* "*") (cast_expression "(uint *)((int)local_cc + uVar21 * 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_cc + uVar21 * 8)" (( "(") (binary_expression "(int)local_cc + uVar21 * 8" (cast_expression "(int)local_cc" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_cc")) (+ "+") (binary_expression "uVar21 * 8" (identifier "uVar21") (* "*") (number_literal "8"))) () ")"))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar12 != 0 || uVar21 != 0)" (( "(") (binary_expression "uVar12 != 0 || uVar21 != 0" (binary_expression "uVar12 != 0" (identifier "uVar12") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "uVar21 != 0" (identifier "uVar21") (!= "!=") (number_literal "0"))) () ")")) (; ";")) (} "}"))) (expression_statement "local_ec = local_ec + 1;" (assignment_expression "local_ec = local_ec + 1" (identifier "local_ec") (= "=") (binary_expression "local_ec + 1" (identifier "local_ec") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_7c != local_ec)" (( "(") (binary_expression "local_7c != local_ec" (identifier "local_7c") (!= "!=") (identifier "local_ec")) () ")")) (; ";")) (} "}"))) (expression_statement "free(pvVar15);" (call_expression "free(pvVar15)" (identifier "free") (argument_list "(pvVar15)" (( "(") (identifier "pvVar15") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (* "*") (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0xe")) () ")")))) (!= "!=") (number_literal "0")) (|| "||") (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (* "*") (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "10")) () ")")))) (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n        puVar31 = &UNK_00050c82 + unaff_EBP;\n        uVar32 = 5;\n        pcVar17 = (char *)dcgettext();\n        printf(pcVar17,puVar31,uVar32);\n        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }\n      }" ({ "{") (expression_statement "puVar31 = &UNK_00050c82 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c82 + unaff_EBP" (identifier "puVar31") (= "=") (binary_expression "&UNK_00050c82 + unaff_EBP" (pointer_expression "&UNK_00050c82" (& "&") (identifier "UNK_00050c82")) (+ "+") (identifier "unaff_EBP"))) (; ";")) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" (identifier "uVar32") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" (identifier "printf") (argument_list "(pcVar17,puVar31,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "puVar31") (, ",") (identifier "uVar32") () ")"))) (; ";")) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }\n        else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" (if "if") (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" (( "(") (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (* "*") (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (( "(") (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" (" """) (string_content "<corrupt string table index: %3ld>") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x12")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          puVar31 = &UNK_00050c3e + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" ({ "{") (expression_statement "puVar31 = &UNK_00050c3e + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c3e + unaff_EBP" (identifier "puVar31") (= "=") (binary_expression "&UNK_00050c3e + unaff_EBP" (pointer_expression "&UNK_00050c3e" (& "&") (identifier "UNK_00050c3e")) (+ "+") (identifier "unaff_EBP"))) (; ";")) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" (identifier "uVar32") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" (identifier "printf") (argument_list "(pcVar17,puVar31,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "puVar31") (, ",") (identifier "uVar32") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" (else "else") (compound_statement "{\n          puVar31 = &UNK_00050c02 + unaff_EBP;\n          uVar32 = 5;\n          pcVar17 = (char *)dcgettext();\n          printf(pcVar17,puVar31,uVar32);\n        }" ({ "{") (expression_statement "puVar31 = &UNK_00050c02 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050c02 + unaff_EBP" (identifier "puVar31") (= "=") (binary_expression "&UNK_00050c02 + unaff_EBP" (pointer_expression "&UNK_00050c02" (& "&") (identifier "UNK_00050c02")) (+ "+") (identifier "unaff_EBP"))) (; ";")) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" (identifier "uVar32") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" (identifier "printf") (argument_list "(pcVar17,puVar31,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "puVar31") (, ",") (identifier "uVar32") () ")"))) (; ";")) (} "}")))) (if_statement "if (local_50 != 0 || local_54 != 0) {\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }" (if "if") (parenthesized_expression "(local_50 != 0 || local_54 != 0)" (( "(") (binary_expression "local_50 != 0 || local_54 != 0" (binary_expression "local_50 != 0" (identifier "local_50") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "local_54 != 0" (identifier "local_54") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n          uVar21 = 0;\n          do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);\n        }" ({ "{") (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" (identifier "uVar21") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          } while (local_54 != uVar21);" (do "do") (compound_statement "{\n            uVar23 = local_6c[uVar21 * 2];\n            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }\n            uVar21 = uVar21 + 1;\n          }" ({ "{") (expression_statement "uVar23 = local_6c[uVar21 * 2];" (assignment_expression "uVar23 = local_6c[uVar21 * 2]" (identifier "uVar23") (= "=") (subscript_expression "local_6c[uVar21 * 2]" (identifier "local_6c") ([ "[") (binary_expression "uVar21 * 2" (identifier "uVar21") (* "*") (number_literal "2")) (] "]"))) (; ";")) (if_statement "if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }" (if "if") (parenthesized_expression "(local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0)" (( "(") (binary_expression "local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0" (binary_expression "local_6c[uVar21 * 2 + 1] != 0" (subscript_expression "local_6c[uVar21 * 2 + 1]" (identifier "local_6c") ([ "[") (binary_expression "uVar21 * 2 + 1" (binary_expression "uVar21 * 2" (identifier "uVar21") (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (!= "!=") (number_literal "0")) (|| "||") (binary_expression "uVar23 != 0" (identifier "uVar23") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n              uVar12 = uVar23 - local_8c;\n              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);\n              do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);\n            }" ({ "{") (expression_statement "uVar12 = uVar23 - local_8c;" (assignment_expression "uVar12 = uVar23 - local_8c" (identifier "uVar12") (= "=") (binary_expression "uVar23 - local_8c" (identifier "uVar23") (- "-") (identifier "local_8c"))) (; ";")) (expression_statement "uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);" (assignment_expression "uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c)" (identifier "uVar23") (= "=") (binary_expression "(local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c)" (parenthesized_expression "(local_6c[uVar21 * 2 + 1] - local_88)" (( "(") (binary_expression "local_6c[uVar21 * 2 + 1] - local_88" (subscript_expression "local_6c[uVar21 * 2 + 1]" (identifier "local_6c") ([ "[") (binary_expression "uVar21 * 2 + 1" (binary_expression "uVar21 * 2" (identifier "uVar21") (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (- "-") (identifier "local_88")) () ")")) (- "-") (call_expression "(uint)(uVar23 < local_8c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar23 < local_8c)" (( "(") (binary_expression "uVar23 < local_8c" (identifier "uVar23") (< "<") (identifier "local_8c")) () ")"))))) (; ";")) (do_statement "do {\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);" (do "do") (compound_statement "{\n                FUN_00032a90();\n                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                uVar23 = uVar23 + bVar25;\n              }" ({ "{") (expression_statement "FUN_00032a90();" (call_expression "FUN_00032a90()" (identifier "FUN_00032a90") (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;" (if "if") (parenthesized_expression "(local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70)" (( "(") (binary_expression "local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70" (binary_expression "local_70 <= uVar23" (identifier "local_70") (<= "<=") (identifier "uVar23")) (&& "&&") (binary_expression "(uint)(uVar12 < local_74) <= uVar23 - local_70" (call_expression "(uint)(uVar12 < local_74)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar12 < local_74)" (( "(") (binary_expression "uVar12 < local_74" (identifier "uVar12") (< "<") (identifier "local_74")) () ")"))) (<= "<=") (binary_expression "uVar23 - local_70" (identifier "uVar23") (- "-") (identifier "local_70")))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "bVar25 = 0xfffffffe < uVar12;" (assignment_expression "bVar25 = 0xfffffffe < uVar12" (identifier "bVar25") (= "=") (binary_expression "0xfffffffe < uVar12" (number_literal "0xfffffffe") (< "<") (identifier "uVar12"))) (; ";")) (expression_statement "uVar12 = uVar12 + 1;" (assignment_expression "uVar12 = uVar12 + 1" (identifier "uVar12") (= "=") (binary_expression "uVar12 + 1" (identifier "uVar12") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar23 = uVar23 + bVar25;" (assignment_expression "uVar23 = uVar23 + bVar25" (identifier "uVar23") (= "=") (binary_expression "uVar23 + bVar25" (identifier "uVar23") (+ "+") (identifier "bVar25"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0)" (( "(") (binary_expression "(*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0" (parenthesized_expression "(*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1)" (( "(") (binary_expression "*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1" (pointer_expression "*(byte *)((int)local_90 + uVar12 * 8 + -8)" (* "*") (cast_expression "(byte *)((int)local_90 + uVar12 * 8 + -8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_90 + uVar12 * 8 + -8)" (( "(") (binary_expression "(int)local_90 + uVar12 * 8 + -8" (binary_expression "(int)local_90 + uVar12 * 8" (cast_expression "(int)local_90" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_90")) (+ "+") (binary_expression "uVar12 * 8" (identifier "uVar12") (* "*") (number_literal "8"))) (+ "+") (number_literal "-8")) () ")")))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (; ";")) (} "}"))) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" (identifier "uVar21") (= "=") (binary_expression "uVar21 + 1" (identifier "uVar21") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_54 != uVar21)" (( "(") (binary_expression "local_54 != uVar21" (identifier "local_54") (!= "!=") (identifier "uVar21")) () ")")) (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_00033418;" (goto "goto") (statement_identifier "LAB_00033418") (; ";")) (} "}"))) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n    goto LAB_000341b6;" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x2e")) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000341b6;" (goto "goto") (statement_identifier "LAB_000341b6") (; ";"))) (labeled_statement "LAB_00033a30:\n    local_ec = *(int *)(iVar9 + 0x5c);" (statement_identifier "LAB_00033a30") (: ":") (expression_statement "local_ec = *(int *)(iVar9 + 0x5c);" (assignment_expression "local_ec = *(int *)(iVar9 + 0x5c)" (identifier "local_ec") (= "=") (pointer_expression "*(int *)(iVar9 + 0x5c)" (* "*") (cast_expression "(int *)(iVar9 + 0x5c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x5c)" (( "(") (binary_expression "iVar9 + 0x5c" (identifier "iVar9") (+ "+") (number_literal "0x5c")) () ")"))))) (; ";"))) (if_statement "if (local_ec != 0) {\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }" (if "if") (parenthesized_expression "(local_ec != 0)" (( "(") (binary_expression "local_ec != 0" (identifier "local_ec") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }\n      goto LAB_00033418;\n    }" ({ "{") (labeled_statement "LAB_00033a43:\n      if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }" (statement_identifier "LAB_00033a43") (: ":") (if_statement "if (*(int *)(iVar9 + 0x54) != 0) {\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }" (if "if") (parenthesized_expression "(*(int *)(iVar9 + 0x54) != 0)" (( "(") (binary_expression "*(int *)(iVar9 + 0x54) != 0" (pointer_expression "*(int *)(iVar9 + 0x54)" (* "*") (cast_expression "(int *)(iVar9 + 0x54)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x54)" (( "(") (binary_expression "iVar9 + 0x54" (identifier "iVar9") (+ "+") (number_literal "0x54")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        local_b0 = 0;\n        puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);\n        do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));\n      }" ({ "{") (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" (identifier "local_b0") (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6);" (assignment_expression "puVar1 = *(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" (identifier "puVar1") (= "=") (pointer_expression "*(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" (* "*") (cast_expression "(undefined4 **)\n                  (\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(\n                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6)" (( "(") (binary_expression "" Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP + 0x6b6" (binary_expression "" Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"\n                  + unaff_EBP" (string_literal "" Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"" (" """) (string_content " Options are:") (escape_sequence "\n") (string_content "  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I") (escape_sequence "\n") (string_content "  -h --file-header       Display the ELF file header") (escape_sequence "\n") (string_content "  -l --program-headers   Display the program headers") (escape_sequence "\n") (string_content "     --segments          An alias for --program-headers") (escape_sequence "\n") (string_content "  -S --section-headers   Display the sections") (escape_sequence "\'") (string_content " header") (escape_sequence "\n") (string_content "     --sections          An alias for --section-headers") (escape_sequence "\n") (string_content "  -g --section-groups    Display the section groups") (escape_sequence "\n") (string_content "  -t --section-details   Display the section details") (escape_sequence "\n") (string_content "  -e --headers           Equivalent to: -h -l -S") (escape_sequence "\n") (string_content "  -s --syms              Display the symbol table") (escape_sequence "\n") (string_content "     --symbols           An alias for --syms") (escape_sequence "\n") (string_content "  --dyn-syms             Display the dynamic symbol table") (escape_sequence "\n") (string_content "  -n --notes             Display the core notes (if present)") (escape_sequence "\n") (string_content "  -r --relocs            Display the relocations (if present)") (escape_sequence "\n") (string_content "  -u --unwind            Display the unwind info (if present)") (escape_sequence "\n") (string_content "  -d --dynamic           Display the dynamic section (if present)") (escape_sequence "\n") (string_content "  -V --version-info      Display the version sections (if present)") (escape_sequence "\n") (string_content "  -A --arch-specific     Display architecture specific information (if any)") (escape_sequence "\n") (string_content "  -c --archive-index     Display the symbol/file index in an archive") (escape_sequence "\n") (string_content "  -D --use-dynamic       Use the dynamic section info when displaying symbols") (escape_sequence "\n") (string_content "  -x --hex-dump=<number|name>") (escape_sequence "\n") (string_content "                         Dump the contents of section <number|name> as bytes") (escape_sequence "\n") (string_content "  -p --string-dump=<number|name>") (escape_sequence "\n") (string_content "                         Dump the contents of section <number|name> as strings") (escape_sequence "\n") (string_content "  -R --relocated-dump=<number|name>") (escape_sequence "\n") (string_content "                         Dump the contents of section <number|name> as relocated bytes") (escape_sequence "\n") (string_content "  -z --decompress        Decompress section before dumping it") (escape_sequence "\n") (string_content "  -w[lLiaprmfFsoRtUuTgAckK] or") (escape_sequence "\n") (string_content "  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,") (escape_sequence "\n") (string_content "               =frames-interp,=str,=loc,=Ranges,=pubtypes,") (escape_sequence "\n") (string_content "               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,") (escape_sequence "\n") (string_content "               =addr,=cu_index,=links,=follow-links]") (escape_sequence "\n") (string_content "                         Display the contents of DWARF debug sections") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x6b6")) () ")"))))) (; ";")) (do_statement "do {\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        } while (local_b0 < *(uint *)(iVar9 + 0x54));" (do "do") (compound_statement "{\n          iVar10 = *(int *)(local_ec + 4);\n          if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }\n          local_b0 = local_b0 + 1;\n          local_ec = local_ec + 0x48;\n        }" ({ "{") (expression_statement "iVar10 = *(int *)(local_ec + 4);" (assignment_expression "iVar10 = *(int *)(local_ec + 4)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(local_ec + 4)" (* "*") (cast_expression "(int *)(local_ec + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_ec + 4)" (( "(") (binary_expression "local_ec + 4" (identifier "local_ec") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if (((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))) {\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }" (if "if") (parenthesized_expression "(((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2))))" (( "(") (binary_expression "((iVar10 == 2) || (iVar10 == 0xb)) &&\n             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))" (parenthesized_expression "((iVar10 == 2) || (iVar10 == 0xb))" (( "(") (binary_expression "(iVar10 == 2) || (iVar10 == 0xb)" (parenthesized_expression "(iVar10 == 2)" (( "(") (binary_expression "iVar10 == 2" (identifier "iVar10") (== "==") (number_literal "2")) () ")")) (|| "||") (parenthesized_expression "(iVar10 == 0xb)" (( "(") (binary_expression "iVar10 == 0xb" (identifier "iVar10") (== "==") (number_literal "0xb")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)))" (( "(") (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2))" (( "(") (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||\n              (iVar10 != 2)" (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (( "(") (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" (" """) (string_content "Unknown section relocation type %d encountered") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")")))) (!= "!=") (number_literal "0")) (|| "||") (parenthesized_expression "(iVar10 != 2)" (( "(") (binary_expression "iVar10 != 2" (identifier "iVar10") (!= "!=") (number_literal "2")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n            iVar10 = *(int *)(local_ec + 0x38);\n            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }\n          }" ({ "{") (expression_statement "iVar10 = *(int *)(local_ec + 0x38);" (assignment_expression "iVar10 = *(int *)(local_ec + 0x38)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(local_ec + 0x38)" (* "*") (cast_expression "(int *)(local_ec + 0x38)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_ec + 0x38)" (( "(") (binary_expression "local_ec + 0x38" (identifier "local_ec") (+ "+") (number_literal "0x38")) () ")"))))) (; ";")) (if_statement "if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }\n            else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" (if "if") (parenthesized_expression "(*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0)" (( "(") (binary_expression "*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0" (binary_expression "*(int *)(local_ec + 0x3c) == 0" (pointer_expression "*(int *)(local_ec + 0x3c)" (* "*") (cast_expression "(int *)(local_ec + 0x3c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_ec + 0x3c)" (( "(") (binary_expression "local_ec + 0x3c" (identifier "local_ec") (+ "+") (number_literal "0x3c")) () ")")))) (== "==") (number_literal "0")) (&& "&&") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n              uVar32 = FUN_00022190();\n              uVar19 = 5;\n              pcVar17 = (char *)dcgettext();\n              printf(pcVar17,uVar32,uVar19);\n            }" ({ "{") (expression_statement "uVar32 = FUN_00022190();" (assignment_expression "uVar32 = FUN_00022190()" (identifier "uVar32") (= "=") (call_expression "FUN_00022190()" (identifier "FUN_00022190") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar19 = 5;" (assignment_expression "uVar19 = 5" (identifier "uVar19") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,uVar32,uVar19);" (call_expression "printf(pcVar17,uVar32,uVar19)" (identifier "printf") (argument_list "(pcVar17,uVar32,uVar19)" (( "(") (identifier "pcVar17") (, ",") (identifier "uVar32") (, ",") (identifier "uVar19") () ")"))) (; ";")) (} "}")) (else_clause "else {\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" (else "else") (compound_statement "{\n              uVar32 = *(undefined4 *)(local_ec + 0x24);\n              uVar21 = FUN_0006b250();\n              local_34[0] = uVar21;\n              uVar19 = FUN_00022190();\n              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);\n              printf(pcVar17,uVar19,uVar21);\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }\n              if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }\n            }" ({ "{") (expression_statement "uVar32 = *(undefined4 *)(local_ec + 0x24);" (assignment_expression "uVar32 = *(undefined4 *)(local_ec + 0x24)" (identifier "uVar32") (= "=") (pointer_expression "*(undefined4 *)(local_ec + 0x24)" (* "*") (cast_expression "(undefined4 *)(local_ec + 0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_ec + 0x24)" (( "(") (binary_expression "local_ec + 0x24" (identifier "local_ec") (+ "+") (number_literal "0x24")) () ")"))))) (; ";")) (expression_statement "uVar21 = FUN_0006b250();" (assignment_expression "uVar21 = FUN_0006b250()" (identifier "uVar21") (= "=") (call_expression "FUN_0006b250()" (identifier "FUN_0006b250") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_34[0] = uVar21;" (assignment_expression "local_34[0] = uVar21" (subscript_expression "local_34[0]" (identifier "local_34") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "uVar21")) (; ";")) (expression_statement "uVar19 = FUN_00022190();" (assignment_expression "uVar19 = FUN_00022190()" (identifier "uVar19") (= "=") (call_expression "FUN_00022190()" (identifier "FUN_00022190") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10);" (assignment_expression "pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" (identifier "dcngettext") (argument_list "(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,\n                                           local_34[0],5,uVar32,iVar10)" (( "(") (number_literal "0") (, ",") (binary_expression "&UNK_00050d0a + unaff_EBP" (pointer_expression "&UNK_00050d0a" (& "&") (identifier "UNK_00050d0a")) (+ "+") (identifier "unaff_EBP")) (, ",") (binary_expression "&UNK_00050cde + unaff_EBP" (pointer_expression "&UNK_00050cde" (& "&") (identifier "UNK_00050cde")) (+ "+") (identifier "unaff_EBP")) (, ",") (subscript_expression "local_34[0]" (identifier "local_34") ([ "[") (number_literal "0") (] "]")) (, ",") (number_literal "5") (, ",") (identifier "uVar32") (, ",") (identifier "iVar10") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,uVar19,uVar21);" (call_expression "printf(pcVar17,uVar19,uVar21)" (identifier "printf") (argument_list "(pcVar17,uVar19,uVar21)" (( "(") (identifier "pcVar17") (, ",") (identifier "uVar19") (, ",") (identifier "uVar21") () ")"))) (; ";")) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }\n              else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" (if "if") (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" (( "(") (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (* "*") (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (( "(") (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" (" """) (string_content "<corrupt string table index: %3ld>") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x12")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                puVar31 = &UNK_00050d6e + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" ({ "{") (expression_statement "puVar31 = &UNK_00050d6e + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050d6e + unaff_EBP" (identifier "puVar31") (= "=") (binary_expression "&UNK_00050d6e + unaff_EBP" (pointer_expression "&UNK_00050d6e" (& "&") (identifier "UNK_00050d6e")) (+ "+") (identifier "unaff_EBP"))) (; ";")) (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" (identifier "uVar21") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,puVar31,uVar21);" (call_expression "printf(pcVar17,puVar31,uVar21)" (identifier "printf") (argument_list "(pcVar17,puVar31,uVar21)" (( "(") (identifier "pcVar17") (, ",") (identifier "puVar31") (, ",") (identifier "uVar21") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" (else "else") (compound_statement "{\n                puVar31 = &UNK_00050d32 + unaff_EBP;\n                uVar21 = 5;\n                pcVar17 = (char *)dcgettext();\n                printf(pcVar17,puVar31,uVar21);\n              }" ({ "{") (expression_statement "puVar31 = &UNK_00050d32 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050d32 + unaff_EBP" (identifier "puVar31") (= "=") (binary_expression "&UNK_00050d32 + unaff_EBP" (pointer_expression "&UNK_00050d32" (& "&") (identifier "UNK_00050d32")) (+ "+") (identifier "unaff_EBP"))) (; ";")) (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" (identifier "uVar21") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,puVar31,uVar21);" (call_expression "printf(pcVar17,puVar31,uVar21)" (identifier "printf") (argument_list "(pcVar17,puVar31,uVar21)" (( "(") (identifier "pcVar17") (, ",") (identifier "puVar31") (, ",") (identifier "uVar21") () ")"))) (; ";")) (} "}")))) (if_statement "if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {\n                local_80 = (void *)FUN_00022830();\n              }\n              else {\n                local_80 = (void *)FUN_000222e0();\n              }" (if "if") (parenthesized_expression "(*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0)" (( "(") (binary_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0" (pointer_expression "*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (* "*") (cast_expression "(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("<corrupt string table index: %3ld>" + unaff_EBP + 0x12)" (( "(") (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP + 0x12" (binary_expression ""<corrupt string table index: %3ld>" + unaff_EBP" (string_literal ""<corrupt string table index: %3ld>"" (" """) (string_content "<corrupt string table index: %3ld>") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x12")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                local_80 = (void *)FUN_00022830();\n              }" ({ "{") (expression_statement "local_80 = (void *)FUN_00022830();" (assignment_expression "local_80 = (void *)FUN_00022830()" (identifier "local_80") (= "=") (cast_expression "(void *)FUN_00022830()" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00022830()" (identifier "FUN_00022830") (argument_list "()" (( "(") () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                local_80 = (void *)FUN_000222e0();\n              }" (else "else") (compound_statement "{\n                local_80 = (void *)FUN_000222e0();\n              }" ({ "{") (expression_statement "local_80 = (void *)FUN_000222e0();" (assignment_expression "local_80 = (void *)FUN_000222e0()" (identifier "local_80") (= "=") (cast_expression "(void *)FUN_000222e0()" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000222e0()" (identifier "FUN_000222e0") (argument_list "()" (( "(") () ")"))))) (; ";")) (} "}")))) (if_statement "if (local_80 != (void *)0x0) {\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }" (if "if") (parenthesized_expression "(local_80 != (void *)0x0)" (( "(") (binary_expression "local_80 != (void *)0x0" (identifier "local_80") (!= "!=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                uVar23 = *(uint *)(local_ec + 0x28);\n                if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }\n                if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }\n                free(local_80);\n                if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }\n              }" ({ "{") (expression_statement "uVar23 = *(uint *)(local_ec + 0x28);" (assignment_expression "uVar23 = *(uint *)(local_ec + 0x28)" (identifier "uVar23") (= "=") (pointer_expression "*(uint *)(local_ec + 0x28)" (* "*") (cast_expression "(uint *)(local_ec + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_ec + 0x28)" (( "(") (binary_expression "local_ec + 0x28" (identifier "local_ec") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (if_statement "if (uVar23 == *(uint *)(iVar9 + 0x58)) {\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }\n                else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }" (if "if") (parenthesized_expression "(uVar23 == *(uint *)(iVar9 + 0x58))" (( "(") (binary_expression "uVar23 == *(uint *)(iVar9 + 0x58)" (identifier "uVar23") (== "==") (pointer_expression "*(uint *)(iVar9 + 0x58)" (* "*") (cast_expression "(uint *)(iVar9 + 0x58)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x58)" (( "(") (binary_expression "iVar9 + 0x58" (identifier "iVar9") (+ "+") (number_literal "0x58")) () ")"))))) () ")")) (compound_statement "{\n                  local_bc = *(void **)(iVar9 + 100);\n                  local_d4 = *(uint *)(iVar9 + 0x68);\n                }" ({ "{") (expression_statement "local_bc = *(void **)(iVar9 + 100);" (assignment_expression "local_bc = *(void **)(iVar9 + 100)" (identifier "local_bc") (= "=") (pointer_expression "*(void **)(iVar9 + 100)" (* "*") (cast_expression "(void **)(iVar9 + 100)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 100)" (( "(") (binary_expression "iVar9 + 100" (identifier "iVar9") (+ "+") (number_literal "100")) () ")"))))) (; ";")) (expression_statement "local_d4 = *(uint *)(iVar9 + 0x68);" (assignment_expression "local_d4 = *(uint *)(iVar9 + 0x68)" (identifier "local_d4") (= "=") (pointer_expression "*(uint *)(iVar9 + 0x68)" (* "*") (cast_expression "(uint *)(iVar9 + 0x68)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x68)" (( "(") (binary_expression "iVar9 + 0x68" (identifier "iVar9") (+ "+") (number_literal "0x68")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }" (else "else") (compound_statement "{\n                  local_d4 = 0;\n                  local_bc = (void *)0x0;\n                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }\n                }" ({ "{") (expression_statement "local_d4 = 0;" (assignment_expression "local_d4 = 0" (identifier "local_d4") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_bc = (void *)0x0;" (assignment_expression "local_bc = (void *)0x0" (identifier "local_bc") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (uVar23 < *(uint *)(iVar9 + 0x54)) {\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }" (if "if") (parenthesized_expression "(uVar23 < *(uint *)(iVar9 + 0x54))" (( "(") (binary_expression "uVar23 < *(uint *)(iVar9 + 0x54)" (identifier "uVar23") (< "<") (pointer_expression "*(uint *)(iVar9 + 0x54)" (* "*") (cast_expression "(uint *)(iVar9 + 0x54)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x54)" (( "(") (binary_expression "iVar9 + 0x54" (identifier "iVar9") (+ "+") (number_literal "0x54")) () ")"))))) () ")")) (compound_statement "{\n                    uVar21 = 5;\n                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;\n                    iVar10 = unaff_EBP + 0x45491;\n                    uVar32 = dcgettext();\n                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);\n                    if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }\n                  }" ({ "{") (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" (identifier "uVar21") (= "=") (number_literal "5")) (; ";")) (expression_statement "iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;" (assignment_expression "iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48" (identifier "iVar2") (= "=") (binary_expression "*(int *)(iVar9 + 0x5c) + uVar23 * 0x48" (pointer_expression "*(int *)(iVar9 + 0x5c)" (* "*") (cast_expression "(int *)(iVar9 + 0x5c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x5c)" (( "(") (binary_expression "iVar9 + 0x5c" (identifier "iVar9") (+ "+") (number_literal "0x5c")) () ")")))) (+ "+") (binary_expression "uVar23 * 0x48" (identifier "uVar23") (* "*") (number_literal "0x48")))) (; ";")) (expression_statement "iVar10 = unaff_EBP + 0x45491;" (assignment_expression "iVar10 = unaff_EBP + 0x45491" (identifier "iVar10") (= "=") (binary_expression "unaff_EBP + 0x45491" (identifier "unaff_EBP") (+ "+") (number_literal "0x45491"))) (; ";")) (expression_statement "uVar32 = dcgettext();" (assignment_expression "uVar32 = dcgettext()" (identifier "uVar32") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21);" (assignment_expression "local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" (identifier "local_bc") (= "=") (cast_expression "(void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" (identifier "FUN_0001bf90") (argument_list "(1,0,*(undefined4 *)(iVar2 + 0x20),\n                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,\n                                                    uVar21)" (( "(") (number_literal "1") (, ",") (number_literal "0") (, ",") (pointer_expression "*(undefined4 *)(iVar2 + 0x20)" (* "*") (cast_expression "(undefined4 *)(iVar2 + 0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x20)" (( "(") (binary_expression "iVar2 + 0x20" (identifier "iVar2") (+ "+") (number_literal "0x20")) () ")")))) (, ",") (pointer_expression "*(undefined4 *)(iVar2 + 0x24)" (* "*") (cast_expression "(undefined4 *)(iVar2 + 0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x24)" (( "(") (binary_expression "iVar2 + 0x24" (identifier "iVar2") (+ "+") (number_literal "0x24")) () ")")))) (, ",") (identifier "uVar32") (, ",") (identifier "iVar10") (, ",") (identifier "uVar21") () ")"))))) (; ";")) (if_statement "if (local_bc != (void *)0x0) {\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }" (if "if") (parenthesized_expression "(local_bc != (void *)0x0)" (( "(") (binary_expression "local_bc != (void *)0x0" (identifier "local_bc") (!= "!=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                      local_d4 = *(uint *)(iVar2 + 0x20);\n                    }" ({ "{") (expression_statement "local_d4 = *(uint *)(iVar2 + 0x20);" (assignment_expression "local_d4 = *(uint *)(iVar2 + 0x20)" (identifier "local_d4") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x20)" (* "*") (cast_expression "(uint *)(iVar2 + 0x20)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x20)" (( "(") (binary_expression "iVar2 + 0x20" (identifier "iVar2") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (} "}"))) (} "}"))) (} "}")))) (if_statement "if (local_34[0] != 0) {\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }" (if "if") (parenthesized_expression "(local_34[0] != 0)" (( "(") (binary_expression "local_34[0] != 0" (subscript_expression "local_34[0]" (identifier "local_34") ([ "[") (number_literal "0") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  uVar23 = 0;\n                  puVar18 = (uint *)((int)local_80 + 0x10);\n                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);\n                  do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);\n                }" ({ "{") (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" (identifier "uVar23") (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar18 = (uint *)((int)local_80 + 0x10);" (assignment_expression "puVar18 = (uint *)((int)local_80 + 0x10)" (identifier "puVar18") (= "=") (cast_expression "(uint *)((int)local_80 + 0x10)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_80 + 0x10)" (( "(") (binary_expression "(int)local_80 + 0x10" (cast_expression "(int)local_80" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_80")) (+ "+") (number_literal "0x10")) () ")")))) (; ";")) (expression_statement "pcVar17 = (char *)(unaff_EBP + 0x48ecf);" (assignment_expression "pcVar17 = (char *)(unaff_EBP + 0x48ecf)" (identifier "pcVar17") (= "=") (cast_expression "(char *)(unaff_EBP + 0x48ecf)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_EBP + 0x48ecf)" (( "(") (binary_expression "unaff_EBP + 0x48ecf" (identifier "unaff_EBP") (+ "+") (number_literal "0x48ecf")) () ")")))) (; ";")) (do_statement "do {\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  } while (uVar23 < local_34[0]);" (do "do") (compound_statement "{\n                    printf(&UNK_00048f32 + unaff_EBP,uVar23);\n                    FUN_0001e910();\n                    putc(0x20,(FILE *)*puVar1);\n                    FUN_0001e910();\n                    uVar32 = FUN_00023ff0();\n                    printf(pcVar17,uVar32);\n                    uVar32 = FUN_00025a40();\n                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);\n                    if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }\n                    uVar32 = FUN_00023e70();\n                    printf(&UNK_00048f38 + unaff_EBP,uVar32);\n                    if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }\n                    FUN_0001fd20();\n                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);\n                    if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }\n                    putc(10,(FILE *)*puVar1);\n                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }\n                    uVar23 = uVar23 + 1;\n                    puVar18 = puVar18 + 7;\n                  }" ({ "{") (expression_statement "printf(&UNK_00048f32 + unaff_EBP,uVar23);" (call_expression "printf(&UNK_00048f32 + unaff_EBP,uVar23)" (identifier "printf") (argument_list "(&UNK_00048f32 + unaff_EBP,uVar23)" (( "(") (binary_expression "&UNK_00048f32 + unaff_EBP" (pointer_expression "&UNK_00048f32" (& "&") (identifier "UNK_00048f32")) (+ "+") (identifier "unaff_EBP")) (, ",") (identifier "uVar23") () ")"))) (; ";")) (expression_statement "FUN_0001e910();" (call_expression "FUN_0001e910()" (identifier "FUN_0001e910") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "putc(0x20,(FILE *)*puVar1);" (call_expression "putc(0x20,(FILE *)*puVar1)" (identifier "putc") (argument_list "(0x20,(FILE *)*puVar1)" (( "(") (number_literal "0x20") (, ",") (cast_expression "(FILE *)*puVar1" (( "(") (type_descriptor "FILE *" (type_identifier "FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) () ")"))) (; ";")) (expression_statement "FUN_0001e910();" (call_expression "FUN_0001e910()" (identifier "FUN_0001e910") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar32 = FUN_00023ff0();" (assignment_expression "uVar32 = FUN_00023ff0()" (identifier "uVar32") (= "=") (call_expression "FUN_00023ff0()" (identifier "FUN_00023ff0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "printf(pcVar17,uVar32);" (call_expression "printf(pcVar17,uVar32)" (identifier "printf") (argument_list "(pcVar17,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "uVar32") () ")"))) (; ";")) (expression_statement "uVar32 = FUN_00025a40();" (assignment_expression "uVar32 = FUN_00025a40()" (identifier "uVar32") (= "=") (call_expression "FUN_00025a40()" (identifier "FUN_00025a40") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "printf((char *)(unaff_EBP + 0x48ed5),uVar32);" (call_expression "printf((char *)(unaff_EBP + 0x48ed5),uVar32)" (identifier "printf") (argument_list "((char *)(unaff_EBP + 0x48ed5),uVar32)" (( "(") (cast_expression "(char *)(unaff_EBP + 0x48ed5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_EBP + 0x48ed5)" (( "(") (binary_expression "unaff_EBP + 0x48ed5" (identifier "unaff_EBP") (+ "+") (number_literal "0x48ed5")) () ")"))) (, ",") (identifier "uVar32") () ")"))) (; ";")) (if_statement "if (*(char *)(iVar9 + 0x17) == '\x06') {\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }\n                    else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }" (if "if") (parenthesized_expression "(*(char *)(iVar9 + 0x17) == '\x06')" (( "(") (binary_expression "*(char *)(iVar9 + 0x17) == '\x06'" (pointer_expression "*(char *)(iVar9 + 0x17)" (* "*") (cast_expression "(char *)(iVar9 + 0x17)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x17)" (( "(") (binary_expression "iVar9 + 0x17" (identifier "iVar9") (+ "+") (number_literal "0x17")) () ")")))) (== "==") (char_literal "'\x06'" (' "'") (escape_sequence "\x06") (' "'"))) () ")")) (compound_statement "{\n                      uVar32 = FUN_00023de0();\n                      printf(pcVar17,uVar32);\n                    }" ({ "{") (expression_statement "uVar32 = FUN_00023de0();" (assignment_expression "uVar32 = FUN_00023de0()" (identifier "uVar32") (= "=") (call_expression "FUN_00023de0()" (identifier "FUN_00023de0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "printf(pcVar17,uVar32);" (call_expression "printf(pcVar17,uVar32)" (identifier "printf") (argument_list "(pcVar17,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "uVar32") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }" (else "else") (compound_statement "{\n                      bVar4 = *(byte *)((int)puVar18 + 5);\n                      uVar32 = FUN_00023d60();\n                      printf(pcVar17,uVar32);\n                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }\n                    }" ({ "{") (expression_statement "bVar4 = *(byte *)((int)puVar18 + 5);" (assignment_expression "bVar4 = *(byte *)((int)puVar18 + 5)" (identifier "bVar4") (= "=") (pointer_expression "*(byte *)((int)puVar18 + 5)" (* "*") (cast_expression "(byte *)((int)puVar18 + 5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar18 + 5)" (( "(") (binary_expression "(int)puVar18 + 5" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (+ "+") (number_literal "5")) () ")"))))) (; ";")) (expression_statement "uVar32 = FUN_00023d60();" (assignment_expression "uVar32 = FUN_00023d60()" (identifier "uVar32") (= "=") (call_expression "FUN_00023d60()" (identifier "FUN_00023d60") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "printf(pcVar17,uVar32);" (call_expression "printf(pcVar17,uVar32)" (identifier "printf") (argument_list "(pcVar17,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "uVar32") () ")"))) (; ";")) (if_statement "if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }" (if "if") (parenthesized_expression "(*(byte *)((int)puVar18 + 5) != (bVar4 & 3))" (( "(") (binary_expression "*(byte *)((int)puVar18 + 5) != (bVar4 & 3)" (pointer_expression "*(byte *)((int)puVar18 + 5)" (* "*") (cast_expression "(byte *)((int)puVar18 + 5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar18 + 5)" (( "(") (binary_expression "(int)puVar18 + 5" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (+ "+") (number_literal "5")) () ")")))) (!= "!=") (parenthesized_expression "(bVar4 & 3)" (( "(") (binary_expression "bVar4 & 3" (identifier "bVar4") (& "&") (number_literal "3")) () ")"))) () ")")) (compound_statement "{\n                        uVar32 = FUN_00032810();\n                        printf((char *)(unaff_EBP + 0x48edb),uVar32);\n                      }" ({ "{") (expression_statement "uVar32 = FUN_00032810();" (assignment_expression "uVar32 = FUN_00032810()" (identifier "uVar32") (= "=") (call_expression "FUN_00032810()" (identifier "FUN_00032810") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "printf((char *)(unaff_EBP + 0x48edb),uVar32);" (call_expression "printf((char *)(unaff_EBP + 0x48edb),uVar32)" (identifier "printf") (argument_list "((char *)(unaff_EBP + 0x48edb),uVar32)" (( "(") (cast_expression "(char *)(unaff_EBP + 0x48edb)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_EBP + 0x48edb)" (( "(") (binary_expression "unaff_EBP + 0x48edb" (identifier "unaff_EBP") (+ "+") (number_literal "0x48edb")) () ")"))) (, ",") (identifier "uVar32") () ")"))) (; ";")) (} "}"))) (} "}")))) (expression_statement "uVar32 = FUN_00023e70();" (assignment_expression "uVar32 = FUN_00023e70()" (identifier "uVar32") (= "=") (call_expression "FUN_00023e70()" (identifier "FUN_00023e70") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "printf(&UNK_00048f38 + unaff_EBP,uVar32);" (call_expression "printf(&UNK_00048f38 + unaff_EBP,uVar32)" (identifier "printf") (argument_list "(&UNK_00048f38 + unaff_EBP,uVar32)" (( "(") (binary_expression "&UNK_00048f38 + unaff_EBP" (pointer_expression "&UNK_00048f38" (& "&") (identifier "UNK_00048f38")) (+ "+") (identifier "unaff_EBP")) (, ",") (identifier "uVar32") () ")"))) (; ";")) (if_statement "if (local_d4 <= *puVar18) {\n                      uVar21 = 5;\n                      dcgettext();\n                    }" (if "if") (parenthesized_expression "(local_d4 <= *puVar18)" (( "(") (binary_expression "local_d4 <= *puVar18" (identifier "local_d4") (<= "<=") (pointer_expression "*puVar18" (* "*") (identifier "puVar18"))) () ")")) (compound_statement "{\n                      uVar21 = 5;\n                      dcgettext();\n                    }" ({ "{") (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" (identifier "uVar21") (= "=") (number_literal "5")) (; ";")) (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_0001fd20();" (call_expression "FUN_0001fd20()" (identifier "FUN_0001fd20") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21);" (assignment_expression "iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21)" (identifier "iVar10") (= "=") (call_expression "FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21)" (identifier "FUN_0002cf40") (argument_list "(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,\n                                          uVar21)" (( "(") (identifier "local_d4") (, ",") (identifier "uVar23") (, ",") (identifier "puVar18") (, ",") (binary_expression "puVar18 + 2" (identifier "puVar18") (+ "+") (number_literal "2")) (, ",") (identifier "local_2c") (, ",") (pointer_expression "&local_36" (& "&") (identifier "local_36")) (, ",") (identifier "uVar21") () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                      if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }\n                    }" ({ "{") (if_statement "if (local_2c[0] == 0) {\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }\n                      else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }" (if "if") (parenthesized_expression "(local_2c[0] == 0)" (( "(") (binary_expression "local_2c[0] == 0" (subscript_expression "local_2c[0]" (identifier "local_2c") ([ "[") (number_literal "0") (] "]")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                        uVar21 = (uint)local_36;\n                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);\n                      }" ({ "{") (expression_statement "uVar21 = (uint)local_36;" (assignment_expression "uVar21 = (uint)local_36" (identifier "uVar21") (= "=") (cast_expression "(uint)local_36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_36"))) (; ";")) (expression_statement "printf((char *)(unaff_EBP + 0x48f3e),iVar10);" (call_expression "printf((char *)(unaff_EBP + 0x48f3e),iVar10)" (identifier "printf") (argument_list "((char *)(unaff_EBP + 0x48f3e),iVar10)" (( "(") (cast_expression "(char *)(unaff_EBP + 0x48f3e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_EBP + 0x48f3e)" (( "(") (binary_expression "unaff_EBP + 0x48f3e" (identifier "unaff_EBP") (+ "+") (number_literal "0x48f3e")) () ")"))) (, ",") (identifier "iVar10") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }" (else "else") (compound_statement "{\n                        __format = (char *)(unaff_EBP + 0x48d63);\n                        if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }\n                        printf(__format,iVar10);\n                      }" ({ "{") (expression_statement "__format = (char *)(unaff_EBP + 0x48d63);" (assignment_expression "__format = (char *)(unaff_EBP + 0x48d63)" (identifier "__format") (= "=") (cast_expression "(char *)(unaff_EBP + 0x48d63)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_EBP + 0x48d63)" (( "(") (binary_expression "unaff_EBP + 0x48d63" (identifier "unaff_EBP") (+ "+") (number_literal "0x48d63")) () ")")))) (; ";")) (if_statement "if (local_2c[0] != 1) {\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }" (if "if") (parenthesized_expression "(local_2c[0] != 1)" (( "(") (binary_expression "local_2c[0] != 1" (subscript_expression "local_2c[0]" (identifier "local_2c") ([ "[") (number_literal "0") (] "]")) (!= "!=") (number_literal "1")) () ")")) (compound_statement "{\n                          __format = (char *)(unaff_EBP + 0x48d62);\n                        }" ({ "{") (expression_statement "__format = (char *)(unaff_EBP + 0x48d62);" (assignment_expression "__format = (char *)(unaff_EBP + 0x48d62)" (identifier "__format") (= "=") (cast_expression "(char *)(unaff_EBP + 0x48d62)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_EBP + 0x48d62)" (( "(") (binary_expression "unaff_EBP + 0x48d62" (identifier "unaff_EBP") (+ "+") (number_literal "0x48d62")) () ")")))) (; ";")) (} "}"))) (expression_statement "printf(__format,iVar10);" (call_expression "printf(__format,iVar10)" (identifier "printf") (argument_list "(__format,iVar10)" (( "(") (identifier "__format") (, ",") (identifier "iVar10") () ")"))) (; ";")) (} "}")))) (} "}"))) (expression_statement "putc(10,(FILE *)*puVar1);" (call_expression "putc(10,(FILE *)*puVar1)" (identifier "putc") (argument_list "(10,(FILE *)*puVar1)" (( "(") (number_literal "10") (, ",") (cast_expression "(FILE *)*puVar1" (( "(") (type_descriptor "FILE *" (type_identifier "FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) () ")"))) (; ";")) (if_statement "if (((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }" (if "if") (parenthesized_expression "(((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06'))" (( "(") (binary_expression "((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')" (parenthesized_expression "((((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8))" (( "(") (binary_expression "(((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&\n                        (*(short *)(iVar9 + 0x42) != 8)" (parenthesized_expression "(((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23))" (( "(") (binary_expression "((byte)((byte)puVar18[1] >> 4) == 0) &&\n                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)" (parenthesized_expression "((byte)((byte)puVar18[1] >> 4) == 0)" (( "(") (binary_expression "(byte)((byte)puVar18[1] >> 4) == 0" (call_expression "(byte)((byte)puVar18[1] >> 4)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "((byte)puVar18[1] >> 4)" (( "(") (binary_expression "(byte)puVar18[1] >> 4" (cast_expression "(byte)puVar18[1]" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (subscript_expression "puVar18[1]" (identifier "puVar18") ([ "[") (number_literal "1") (] "]"))) (>> ">>") (number_literal "4")) () ")"))) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)" (( "(") (comma_expression "uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23" (assignment_expression "uVar12 = *(uint *)(local_ec + 0x2c)" (identifier "uVar12") (= "=") (pointer_expression "*(uint *)(local_ec + 0x2c)" (* "*") (cast_expression "(uint *)(local_ec + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_ec + 0x2c)" (( "(") (binary_expression "local_ec + 0x2c" (identifier "local_ec") (+ "+") (number_literal "0x2c")) () ")"))))) (, ",") (binary_expression "uVar12 <= uVar23" (identifier "uVar12") (<= "<=") (identifier "uVar23"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(short *)(iVar9 + 0x42) != 8)" (( "(") (binary_expression "*(short *)(iVar9 + 0x42) != 8" (pointer_expression "*(short *)(iVar9 + 0x42)" (* "*") (cast_expression "(short *)(iVar9 + 0x42)" (( "(") (type_descriptor "short *" (sized_type_specifier "short" (short "short")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x42)" (( "(") (binary_expression "iVar9 + 0x42" (identifier "iVar9") (+ "+") (number_literal "0x42")) () ")")))) (!= "!=") (number_literal "8")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(iVar9 + 0x17) != '\x06')" (( "(") (binary_expression "*(char *)(iVar9 + 0x17) != '\x06'" (pointer_expression "*(char *)(iVar9 + 0x17)" (* "*") (cast_expression "(char *)(iVar9 + 0x17)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x17)" (( "(") (binary_expression "iVar9 + 0x17" (identifier "iVar9") (+ "+") (number_literal "0x17")) () ")")))) (!= "!=") (char_literal "'\x06'" (' "'") (escape_sequence "\x06") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                      uVar32 = FUN_00022190();\n                      puVar31 = &UNK_00050db2 + unaff_EBP;\n                      uVar21 = 5;\n                      uVar30 = 0;\n                      uVar19 = dcgettext();\n                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);\n                    }" ({ "{") (expression_statement "uVar32 = FUN_00022190();" (assignment_expression "uVar32 = FUN_00022190()" (identifier "uVar32") (= "=") (call_expression "FUN_00022190()" (identifier "FUN_00022190") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar31 = &UNK_00050db2 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050db2 + unaff_EBP" (identifier "puVar31") (= "=") (binary_expression "&UNK_00050db2 + unaff_EBP" (pointer_expression "&UNK_00050db2" (& "&") (identifier "UNK_00050db2")) (+ "+") (identifier "unaff_EBP"))) (; ";")) (expression_statement "uVar21 = 5;" (assignment_expression "uVar21 = 5" (identifier "uVar21") (= "=") (number_literal "5")) (; ";")) (expression_statement "uVar30 = 0;" (assignment_expression "uVar30 = 0" (identifier "uVar30") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar19 = dcgettext();" (assignment_expression "uVar19 = dcgettext()" (identifier "uVar19") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);" (call_expression "warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31)" (identifier "warn") (argument_list "(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31)" (( "(") (identifier "uVar19") (, ",") (identifier "uVar23") (, ",") (identifier "uVar32") (, ",") (identifier "uVar12") (, ",") (identifier "uVar30") (, ",") (identifier "puVar31") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar23 = uVar23 + 1;" (assignment_expression "uVar23 = uVar23 + 1" (identifier "uVar23") (= "=") (binary_expression "uVar23 + 1" (identifier "uVar23") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar18 = puVar18 + 7;" (assignment_expression "puVar18 = puVar18 + 7" (identifier "puVar18") (= "=") (binary_expression "puVar18 + 7" (identifier "puVar18") (+ "+") (number_literal "7"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar23 < local_34[0])" (( "(") (binary_expression "uVar23 < local_34[0]" (identifier "uVar23") (< "<") (subscript_expression "local_34[0]" (identifier "local_34") ([ "[") (number_literal "0") (] "]"))) () ")")) (; ";")) (} "}"))) (expression_statement "free(local_80);" (call_expression "free(local_80)" (identifier "free") (argument_list "(local_80)" (( "(") (identifier "local_80") () ")"))) (; ";")) (if_statement "if (*(void **)(iVar9 + 100) != local_bc) {\n                  free(local_bc);\n                }" (if "if") (parenthesized_expression "(*(void **)(iVar9 + 100) != local_bc)" (( "(") (binary_expression "*(void **)(iVar9 + 100) != local_bc" (pointer_expression "*(void **)(iVar9 + 100)" (* "*") (cast_expression "(void **)(iVar9 + 100)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 100)" (( "(") (binary_expression "iVar9 + 100" (identifier "iVar9") (+ "+") (number_literal "100")) () ")")))) (!= "!=") (identifier "local_bc")) () ")")) (compound_statement "{\n                  free(local_bc);\n                }" ({ "{") (expression_statement "free(local_bc);" (call_expression "free(local_bc)" (identifier "free") (argument_list "(local_bc)" (( "(") (identifier "local_bc") () ")"))) (; ";")) (} "}"))) (} "}"))) (} "}")))) (} "}"))) (expression_statement "local_b0 = local_b0 + 1;" (assignment_expression "local_b0 = local_b0 + 1" (identifier "local_b0") (= "=") (binary_expression "local_b0 + 1" (identifier "local_b0") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "local_ec = local_ec + 0x48;" (assignment_expression "local_ec = local_ec + 0x48" (identifier "local_ec") (= "=") (binary_expression "local_ec + 0x48" (identifier "local_ec") (+ "+") (number_literal "0x48"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_b0 < *(uint *)(iVar9 + 0x54))" (( "(") (binary_expression "local_b0 < *(uint *)(iVar9 + 0x54)" (identifier "local_b0") (< "<") (pointer_expression "*(uint *)(iVar9 + 0x54)" (* "*") (cast_expression "(uint *)(iVar9 + 0x54)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x54)" (( "(") (binary_expression "iVar9 + 0x54" (identifier "iVar9") (+ "+") (number_literal "0x54")) () ")"))))) () ")")) (; ";")) (} "}")))) (goto_statement "goto LAB_00033418;" (goto "goto") (statement_identifier "LAB_00033418") (; ";")) (} "}"))) (if_statement "if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)\n    goto LAB_00033418;" (if "if") (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)" (( "(") (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (( "(") (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" (" """) (string_content "Unknown section relocation type %d encountered") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00033418;" (goto "goto") (statement_identifier "LAB_00033418") (; ";"))) (labeled_statement "LAB_000337b9:\n    puVar31 = &UNK_00050dee + unaff_EBP;" (statement_identifier "LAB_000337b9") (: ":") (expression_statement "puVar31 = &UNK_00050dee + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050dee + unaff_EBP" (identifier "puVar31") (= "=") (binary_expression "&UNK_00050dee + unaff_EBP" (pointer_expression "&UNK_00050dee" (& "&") (identifier "UNK_00050dee")) (+ "+") (identifier "unaff_EBP"))) (; ";"))) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" (identifier "uVar32") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" (identifier "printf") (argument_list "(pcVar17,puVar31,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "puVar31") (, ",") (identifier "uVar32") () ")"))) (; ";")) (expression_statement "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" (assignment_expression "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")"))))) (; ";")) (if_statement "if (iVar9 == 0) goto LAB_000337f0;" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000337f0;" (goto "goto") (statement_identifier "LAB_000337f0") (; ";"))) (labeled_statement "LAB_00033426:\n    local_7c = (size_t)lVar28;" (statement_identifier "LAB_00033426") (: ":") (expression_statement "local_7c = (size_t)lVar28;" (assignment_expression "local_7c = (size_t)lVar28" (identifier "local_7c") (= "=") (cast_expression "(size_t)lVar28" (( "(") (type_descriptor "size_t" (primitive_type "size_t")) () ")") (identifier "lVar28"))) (; ";"))) (expression_statement "uVar21 = (uint)((ulonglong)lVar29 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)lVar29 >> 0x20)" (identifier "uVar21") (= "=") (call_expression "(uint)((ulonglong)lVar29 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)lVar29 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar29")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "local_e0 = (uint)lVar29;" (assignment_expression "local_e0 = (uint)lVar29" (identifier "local_e0") (= "=") (cast_expression "(uint)lVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar29"))) (; ";")) (if_statement "if (local_78 != (uint *)0x0) {\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }" (if "if") (parenthesized_expression "(local_78 != (uint *)0x0)" (( "(") (binary_expression "local_78 != (uint *)0x0" (identifier "local_78") (!= "!=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);\n      printf(pcVar17,local_7c);\n      puVar18 = (uint *)calloc(local_7c,4);\n      if (puVar18 == (uint *)0x0) goto LAB_00034166;\n      pvVar15 = (void *)FUN_0005da70();\n      memset(pvVar15,0,local_e0);\n      puVar31 = &UNK_00050ee6 + unaff_EBP;\n      uVar32 = 5;\n      pcVar17 = (char *)dcgettext();\n      printf(pcVar17,puVar31,uVar32);\n      if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }\n      free(puVar13);\n      free(puVar18);\n      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n      goto LAB_000337ff;\n    }" ({ "{") (expression_statement "pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);" (assignment_expression "pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" (identifier "dcngettext") (argument_list "(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c)" (( "(") (number_literal "0") (, ",") (binary_expression "&UNK_00050e72 + unaff_EBP" (pointer_expression "&UNK_00050e72" (& "&") (identifier "UNK_00050e72")) (+ "+") (identifier "unaff_EBP")) (, ",") (binary_expression "&UNK_00050e36 + unaff_EBP" (pointer_expression "&UNK_00050e36" (& "&") (identifier "UNK_00050e36")) (+ "+") (identifier "unaff_EBP")) (, ",") (identifier "local_7c") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,local_7c);" (call_expression "printf(pcVar17,local_7c)" (identifier "printf") (argument_list "(pcVar17,local_7c)" (( "(") (identifier "pcVar17") (, ",") (identifier "local_7c") () ")"))) (; ";")) (expression_statement "puVar18 = (uint *)calloc(local_7c,4);" (assignment_expression "puVar18 = (uint *)calloc(local_7c,4)" (identifier "puVar18") (= "=") (cast_expression "(uint *)calloc(local_7c,4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "calloc(local_7c,4)" (identifier "calloc") (argument_list "(local_7c,4)" (( "(") (identifier "local_7c") (, ",") (number_literal "4") () ")"))))) (; ";")) (if_statement "if (puVar18 == (uint *)0x0) goto LAB_00034166;" (if "if") (parenthesized_expression "(puVar18 == (uint *)0x0)" (( "(") (binary_expression "puVar18 == (uint *)0x0" (identifier "puVar18") (== "==") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00034166;" (goto "goto") (statement_identifier "LAB_00034166") (; ";"))) (expression_statement "pvVar15 = (void *)FUN_0005da70();" (assignment_expression "pvVar15 = (void *)FUN_0005da70()" (identifier "pvVar15") (= "=") (cast_expression "(void *)FUN_0005da70()" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0005da70()" (identifier "FUN_0005da70") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "memset(pvVar15,0,local_e0);" (call_expression "memset(pvVar15,0,local_e0)" (identifier "memset") (argument_list "(pvVar15,0,local_e0)" (( "(") (identifier "pvVar15") (, ",") (number_literal "0") (, ",") (identifier "local_e0") () ")"))) (; ";")) (expression_statement "puVar31 = &UNK_00050ee6 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050ee6 + unaff_EBP" (identifier "puVar31") (= "=") (binary_expression "&UNK_00050ee6 + unaff_EBP" (pointer_expression "&UNK_00050ee6" (& "&") (identifier "UNK_00050ee6")) (+ "+") (identifier "unaff_EBP"))) (; ";")) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" (identifier "uVar32") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" (identifier "printf") (argument_list "(pcVar17,puVar31,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "puVar31") (, ",") (identifier "uVar32") () ")"))) (; ";")) (if_statement "if (lVar28 == 0) {\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }\n      else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }" (if "if") (parenthesized_expression "(lVar28 == 0)" (( "(") (binary_expression "lVar28 == 0" (identifier "lVar28") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        free(pvVar15);\n        puVar13 = (uint *)calloc(1,4);\n        if (puVar13 == (uint *)0x0) goto LAB_00034764;\n      }" ({ "{") (expression_statement "free(pvVar15);" (call_expression "free(pvVar15)" (identifier "free") (argument_list "(pvVar15)" (( "(") (identifier "pvVar15") () ")"))) (; ";")) (expression_statement "puVar13 = (uint *)calloc(1,4);" (assignment_expression "puVar13 = (uint *)calloc(1,4)" (identifier "puVar13") (= "=") (cast_expression "(uint *)calloc(1,4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "calloc(1,4)" (identifier "calloc") (argument_list "(1,4)" (( "(") (number_literal "1") (, ",") (number_literal "4") () ")"))))) (; ";")) (if_statement "if (puVar13 == (uint *)0x0) goto LAB_00034764;" (if "if") (parenthesized_expression "(puVar13 == (uint *)0x0)" (( "(") (binary_expression "puVar13 == (uint *)0x0" (identifier "puVar13") (== "==") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00034764;" (goto "goto") (statement_identifier "LAB_00034764") (; ";"))) (} "}")) (else_clause "else {\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }" (else "else") (compound_statement "{\n        local_c4 = local_78;\n        uVar23 = 0;\n        uVar12 = 0;\n        local_b4 = puVar18;\n        do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);\n        free(pvVar15);\n        puVar13 = (uint *)calloc((size_t)local_f4,4);\n        if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\n      }" ({ "{") (expression_statement "local_c4 = local_78;" (assignment_expression "local_c4 = local_78" (identifier "local_c4") (= "=") (identifier "local_78")) (; ";")) (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" (identifier "uVar23") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b4 = puVar18;" (assignment_expression "local_b4 = puVar18" (identifier "local_b4") (= "=") (identifier "puVar18")) (; ";")) (do_statement "do {\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        } while (local_78 + local_7c * 2 != local_c4);" (do "do") (compound_statement "{\n          uVar24 = local_c4[1];\n          if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }\nLAB_000335a5:\n          local_c4 = local_c4 + 2;\n          local_b4 = local_b4 + 1;\n        }" ({ "{") (expression_statement "uVar24 = local_c4[1];" (assignment_expression "uVar24 = local_c4[1]" (identifier "uVar24") (= "=") (subscript_expression "local_c4[1]" (identifier "local_c4") ([ "[") (number_literal "1") (] "]"))) (; ";")) (if_statement "if (uVar24 == 0 && *local_c4 == 0) {\n            local_f4 = (uint *)(uVar23 + 1);\n          }\n          else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }" (if "if") (parenthesized_expression "(uVar24 == 0 && *local_c4 == 0)" (( "(") (binary_expression "uVar24 == 0 && *local_c4 == 0" (binary_expression "uVar24 == 0" (identifier "uVar24") (== "==") (number_literal "0")) (&& "&&") (binary_expression "*local_c4 == 0" (pointer_expression "*local_c4" (* "*") (identifier "local_c4")) (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n            local_f4 = (uint *)(uVar23 + 1);\n          }" ({ "{") (expression_statement "local_f4 = (uint *)(uVar23 + 1);" (assignment_expression "local_f4 = (uint *)(uVar23 + 1)" (identifier "local_f4") (= "=") (cast_expression "(uint *)(uVar23 + 1)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar23 + 1)" (( "(") (binary_expression "uVar23 + 1" (identifier "uVar23") (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }" (else "else") (compound_statement "{\n            uVar22 = *local_b4;\n            iVar9 = uVar12 - uVar22;\n            uVar16 = *local_c4;\n            do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);\n            *local_b4 = uVar22;\n          }" ({ "{") (expression_statement "uVar22 = *local_b4;" (assignment_expression "uVar22 = *local_b4" (identifier "uVar22") (= "=") (pointer_expression "*local_b4" (* "*") (identifier "local_b4"))) (; ";")) (expression_statement "iVar9 = uVar12 - uVar22;" (assignment_expression "iVar9 = uVar12 - uVar22" (identifier "iVar9") (= "=") (binary_expression "uVar12 - uVar22" (identifier "uVar12") (- "-") (identifier "uVar22"))) (; ";")) (expression_statement "uVar16 = *local_c4;" (assignment_expression "uVar16 = *local_c4" (identifier "uVar16") (= "=") (pointer_expression "*local_c4" (* "*") (identifier "local_c4"))) (; ";")) (do_statement "do {\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            } while (uVar24 != 0 || uVar6 != 0);" (do "do") (compound_statement "{\n              uVar22 = uVar22 + 1;\n              uVar12 = iVar9 + uVar22;\n              local_f4 = (uint *)(uVar23 + 1);\n              if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }\n              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }\n              *(char *)((int)pvVar15 + uVar16) = '\x01';\n              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);\n              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);\n              uVar16 = uVar6;\n            }" ({ "{") (expression_statement "uVar22 = uVar22 + 1;" (assignment_expression "uVar22 = uVar22 + 1" (identifier "uVar22") (= "=") (binary_expression "uVar22 + 1" (identifier "uVar22") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar12 = iVar9 + uVar22;" (assignment_expression "uVar12 = iVar9 + uVar22" (identifier "uVar12") (= "=") (binary_expression "iVar9 + uVar22" (identifier "iVar9") (+ "+") (identifier "uVar22"))) (; ";")) (expression_statement "local_f4 = (uint *)(uVar23 + 1);" (assignment_expression "local_f4 = (uint *)(uVar23 + 1)" (identifier "local_f4") (= "=") (cast_expression "(uint *)(uVar23 + 1)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar23 + 1)" (( "(") (binary_expression "uVar23 + 1" (identifier "uVar23") (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if (uVar23 < uVar22) {\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }" (if "if") (parenthesized_expression "(uVar23 < uVar22)" (( "(") (binary_expression "uVar23 < uVar22" (identifier "uVar23") (< "<") (identifier "uVar22")) () ")")) (compound_statement "{\n                local_f4 = (uint *)(uVar23 + 2);\n                uVar23 = uVar23 + 1;\n              }" ({ "{") (expression_statement "local_f4 = (uint *)(uVar23 + 2);" (assignment_expression "local_f4 = (uint *)(uVar23 + 2)" (identifier "local_f4") (= "=") (cast_expression "(uint *)(uVar23 + 2)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar23 + 2)" (( "(") (binary_expression "uVar23 + 2" (identifier "uVar23") (+ "+") (number_literal "2")) () ")")))) (; ";")) (expression_statement "uVar23 = uVar23 + 1;" (assignment_expression "uVar23 = uVar23 + 1" (identifier "uVar23") (= "=") (binary_expression "uVar23 + 1" (identifier "uVar23") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (if_statement "if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }" (if "if") (parenthesized_expression "((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0'))" (( "(") (binary_expression "(uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||\n                 (*(char *)((int)pvVar15 + uVar16) != '\0')" (parenthesized_expression "(uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21)" (( "(") (binary_expression "uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21" (binary_expression "uVar21 <= uVar24" (identifier "uVar21") (<= "<=") (identifier "uVar24")) (&& "&&") (binary_expression "(uint)(uVar16 < local_e0) <= uVar24 - uVar21" (call_expression "(uint)(uVar16 < local_e0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar16 < local_e0)" (( "(") (binary_expression "uVar16 < local_e0" (identifier "uVar16") (< "<") (identifier "local_e0")) () ")"))) (<= "<=") (binary_expression "uVar24 - uVar21" (identifier "uVar24") (- "-") (identifier "uVar21")))) () ")")) (|| "||") (parenthesized_expression "(*(char *)((int)pvVar15 + uVar16) != '\0')" (( "(") (binary_expression "*(char *)((int)pvVar15 + uVar16) != '\0'" (pointer_expression "*(char *)((int)pvVar15 + uVar16)" (* "*") (cast_expression "(char *)((int)pvVar15 + uVar16)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pvVar15 + uVar16)" (( "(") (binary_expression "(int)pvVar15 + uVar16" (cast_expression "(int)pvVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pvVar15")) (+ "+") (identifier "uVar16")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                *local_b4 = uVar22;\n                dcgettext();\n                error();\n                goto LAB_000335a5;\n              }" ({ "{") (expression_statement "*local_b4 = uVar22;" (assignment_expression "*local_b4 = uVar22" (pointer_expression "*local_b4" (* "*") (identifier "local_b4")) (= "=") (identifier "uVar22")) (; ";")) (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_000335a5;" (goto "goto") (statement_identifier "LAB_000335a5") (; ";")) (} "}"))) (expression_statement "*(char *)((int)pvVar15 + uVar16) = '\x01';" (assignment_expression "*(char *)((int)pvVar15 + uVar16) = '\x01'" (pointer_expression "*(char *)((int)pvVar15 + uVar16)" (* "*") (cast_expression "(char *)((int)pvVar15 + uVar16)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pvVar15 + uVar16)" (( "(") (binary_expression "(int)pvVar15 + uVar16" (cast_expression "(int)pvVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pvVar15")) (+ "+") (identifier "uVar16")) () ")")))) (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "uVar6 = *(uint *)((int)local_cc + uVar16 * 8);" (assignment_expression "uVar6 = *(uint *)((int)local_cc + uVar16 * 8)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)((int)local_cc + uVar16 * 8)" (* "*") (cast_expression "(uint *)((int)local_cc + uVar16 * 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_cc + uVar16 * 8)" (( "(") (binary_expression "(int)local_cc + uVar16 * 8" (cast_expression "(int)local_cc" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_cc")) (+ "+") (binary_expression "uVar16 * 8" (identifier "uVar16") (* "*") (number_literal "8"))) () ")"))))) (; ";")) (expression_statement "uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);" (assignment_expression "uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4)" (identifier "uVar24") (= "=") (pointer_expression "*(uint *)((int)local_cc + uVar16 * 8 + 4)" (* "*") (cast_expression "(uint *)((int)local_cc + uVar16 * 8 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_cc + uVar16 * 8 + 4)" (( "(") (binary_expression "(int)local_cc + uVar16 * 8 + 4" (binary_expression "(int)local_cc + uVar16 * 8" (cast_expression "(int)local_cc" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_cc")) (+ "+") (binary_expression "uVar16 * 8" (identifier "uVar16") (* "*") (number_literal "8"))) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "uVar16 = uVar6;" (assignment_expression "uVar16 = uVar6" (identifier "uVar16") (= "=") (identifier "uVar6")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar24 != 0 || uVar6 != 0)" (( "(") (binary_expression "uVar24 != 0 || uVar6 != 0" (binary_expression "uVar24 != 0" (identifier "uVar24") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "uVar6 != 0" (identifier "uVar6") (!= "!=") (number_literal "0"))) () ")")) (; ";")) (expression_statement "*local_b4 = uVar22;" (assignment_expression "*local_b4 = uVar22" (pointer_expression "*local_b4" (* "*") (identifier "local_b4")) (= "=") (identifier "uVar22")) (; ";")) (} "}")))) (labeled_statement "LAB_000335a5:\n          local_c4 = local_c4 + 2;" (statement_identifier "LAB_000335a5") (: ":") (expression_statement "local_c4 = local_c4 + 2;" (assignment_expression "local_c4 = local_c4 + 2" (identifier "local_c4") (= "=") (binary_expression "local_c4 + 2" (identifier "local_c4") (+ "+") (number_literal "2"))) (; ";"))) (expression_statement "local_b4 = local_b4 + 1;" (assignment_expression "local_b4 = local_b4 + 1" (identifier "local_b4") (= "=") (binary_expression "local_b4 + 1" (identifier "local_b4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_78 + local_7c * 2 != local_c4)" (( "(") (binary_expression "local_78 + local_7c * 2 != local_c4" (binary_expression "local_78 + local_7c * 2" (identifier "local_78") (+ "+") (binary_expression "local_7c * 2" (identifier "local_7c") (* "*") (number_literal "2"))) (!= "!=") (identifier "local_c4")) () ")")) (; ";")) (expression_statement "free(pvVar15);" (call_expression "free(pvVar15)" (identifier "free") (argument_list "(pvVar15)" (( "(") (identifier "pvVar15") () ")"))) (; ";")) (expression_statement "puVar13 = (uint *)calloc((size_t)local_f4,4);" (assignment_expression "puVar13 = (uint *)calloc((size_t)local_f4,4)" (identifier "puVar13") (= "=") (cast_expression "(uint *)calloc((size_t)local_f4,4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "calloc((size_t)local_f4,4)" (identifier "calloc") (argument_list "((size_t)local_f4,4)" (( "(") (cast_expression "(size_t)local_f4" (( "(") (type_descriptor "size_t" (primitive_type "size_t")) () ")") (identifier "local_f4")) (, ",") (number_literal "4") () ")"))))) (; ";")) (if_statement "if (puVar13 == (uint *)0x0) {\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }" (if "if") (parenthesized_expression "(puVar13 == (uint *)0x0)" (( "(") (binary_expression "puVar13 == (uint *)0x0" (identifier "puVar13") (== "==") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_00034764:\n          free(puVar18);\n          goto LAB_00034166;\n        }" ({ "{") (labeled_statement "LAB_00034764:\n          free(puVar18);" (statement_identifier "LAB_00034764") (: ":") (expression_statement "free(puVar18);" (call_expression "free(puVar18)" (identifier "free") (argument_list "(puVar18)" (( "(") (identifier "puVar18") () ")"))) (; ";"))) (goto_statement "goto LAB_00034166;" (goto "goto") (statement_identifier "LAB_00034166") (; ";")) (} "}"))) (expression_statement "puVar14 = puVar18;" (assignment_expression "puVar14 = puVar18" (identifier "puVar14") (= "=") (identifier "puVar18")) (; ";")) (do_statement "do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_7c != puVar14);" (do "do") (compound_statement "{\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        }" ({ "{") (expression_statement "uVar21 = *puVar14;" (assignment_expression "uVar21 = *puVar14" (identifier "uVar21") (= "=") (pointer_expression "*puVar14" (* "*") (identifier "puVar14"))) (; ";")) (expression_statement "puVar14 = puVar14 + 1;" (assignment_expression "puVar14 = puVar14 + 1" (identifier "puVar14") (= "=") (binary_expression "puVar14 + 1" (identifier "puVar14") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar13[uVar21] = puVar13[uVar21] + 1;" (assignment_expression "puVar13[uVar21] = puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" (identifier "puVar13") ([ "[") (identifier "uVar21") (] "]")) (= "=") (binary_expression "puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" (identifier "puVar13") ([ "[") (identifier "uVar21") (] "]")) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(puVar18 + local_7c != puVar14)" (( "(") (binary_expression "puVar18 + local_7c != puVar14" (binary_expression "puVar18 + local_7c" (identifier "puVar18") (+ "+") (identifier "local_7c")) (!= "!=") (identifier "puVar14")) () ")")) (; ";")) (expression_statement "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c;" (assignment_expression "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c" (identifier "dVar3") (= "=") (binary_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_7c" (parenthesized_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP))" (( "(") (binary_expression "(double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(double)*puVar13" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (* "*") (cast_expression "(double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" (* "*") (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" (( "(") (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" (& "&") (identifier "DAT_0005b7c2")) (+ "+") (identifier "unaff_EBP")) () ")")))))) () ")")) (/ "/") (cast_expression "(double)(int)local_7c" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)local_7c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_7c"))))) (; ";")) (expression_statement "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );" (call_expression "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" (identifier "printf") (argument_list "((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" (( "(") (cast_expression "(char *)(unaff_EBP + 0x48f47)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_EBP + 0x48f47)" (( "(") (binary_expression "unaff_EBP + 0x48f47" (identifier "unaff_EBP") (+ "+") (number_literal "0x48f47")) () ")"))) (, ",") (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (, ",") (call_expression "SUB84(dVar3,0)" (identifier "SUB84") (argument_list "(dVar3,0)" (( "(") (identifier "dVar3") (, ",") (number_literal "0") () ")"))) (, ",") (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" (( "(") (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dVar3")) (>> ">>") (number_literal "0x20")) () ")"))) () ")"))) (; ";")) (if_statement "if (uVar23 != 0) {\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" (if "if") (parenthesized_expression "(uVar23 != 0)" (( "(") (binary_expression "uVar23 != 0" (identifier "uVar23") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          uVar24 = 0;\n          uVar21 = 1;\n          do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" ({ "{") (expression_statement "uVar24 = 0;" (assignment_expression "uVar24 = 0" (identifier "uVar24") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" (identifier "uVar21") (= "=") (number_literal "1")) (; ";")) (do_statement "do {\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);" (do "do") (compound_statement "{\n            uVar22 = puVar13[uVar21];\n            uVar24 = uVar24 + uVar22 * uVar21;\n            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = uVar23 != uVar21;\n            uVar21 = uVar21 + 1;\n          }" ({ "{") (expression_statement "uVar22 = puVar13[uVar21];" (assignment_expression "uVar22 = puVar13[uVar21]" (identifier "uVar22") (= "=") (subscript_expression "puVar13[uVar21]" (identifier "puVar13") ([ "[") (identifier "uVar21") (] "]"))) (; ";")) (expression_statement "uVar24 = uVar24 + uVar22 * uVar21;" (assignment_expression "uVar24 = uVar24 + uVar22 * uVar21" (identifier "uVar24") (= "=") (binary_expression "uVar24 + uVar22 * uVar21" (identifier "uVar24") (+ "+") (binary_expression "uVar22 * uVar21" (identifier "uVar22") (* "*") (identifier "uVar21")))) (; ";")) (expression_statement "dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            );" (assignment_expression "dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            )" (identifier "dVar3") (= "=") (cast_expression "(double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            )" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (parenthesized_expression "(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12\n                            )" (( "(") (binary_expression "((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12" (parenthesized_expression "((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" (( "(") (binary_expression "(float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar24" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (identifier "uVar24")) (* "*") (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" (* "*") (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" (( "(") (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" (& "&") (identifier "DAT_0005b7c2")) (+ "+") (identifier "unaff_EBP")) () ")"))))) () ")")) (/ "/") (cast_expression "(float)uVar12" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (identifier "uVar12"))) () ")")))) (; ";")) (expression_statement "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));" (call_expression "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" (identifier "printf") (argument_list "(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,\n                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" (( "(") (binary_expression "&UNK_00050f4a + unaff_EBP" (pointer_expression "&UNK_00050f4a" (& "&") (identifier "UNK_00050f4a")) (+ "+") (identifier "unaff_EBP")) (, ",") (identifier "uVar21") (, ",") (identifier "uVar22") (, ",") (cast_expression "(double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (parenthesized_expression "(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c)" (( "(") (binary_expression "((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_7c" (parenthesized_expression "((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" (( "(") (binary_expression "(float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar22" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (identifier "uVar22")) (* "*") (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" (* "*") (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" (( "(") (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" (& "&") (identifier "DAT_0005b7c2")) (+ "+") (identifier "unaff_EBP")) () ")"))))) () ")")) (/ "/") (cast_expression "(float)(int)local_7c" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (cast_expression "(int)local_7c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_7c")))) () ")"))) (, ",") (call_expression "SUB84(dVar3,0)" (identifier "SUB84") (argument_list "(dVar3,0)" (( "(") (identifier "dVar3") (, ",") (number_literal "0") () ")"))) (, ",") (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" (( "(") (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dVar3")) (>> ">>") (number_literal "0x20")) () ")"))) () ")"))) (; ";")) (expression_statement "bVar25 = uVar23 != uVar21;" (assignment_expression "bVar25 = uVar23 != uVar21" (identifier "bVar25") (= "=") (binary_expression "uVar23 != uVar21" (identifier "uVar23") (!= "!=") (identifier "uVar21"))) (; ";")) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" (identifier "uVar21") (= "=") (binary_expression "uVar21 + 1" (identifier "uVar21") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (} "}"))) (} "}")))) (expression_statement "free(puVar13);" (call_expression "free(puVar13)" (identifier "free") (argument_list "(puVar13)" (( "(") (identifier "puVar13") () ")"))) (; ";")) (expression_statement "free(puVar18);" (call_expression "free(puVar18)" (identifier "free") (argument_list "(puVar18)" (( "(") (identifier "puVar18") () ")"))) (; ";")) (expression_statement "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" (assignment_expression "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")"))))) (; ";")) (goto_statement "goto LAB_000337ff;" (goto "goto") (statement_identifier "LAB_000337ff") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }" (else "else") (compound_statement "{\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }\n    local_cc = (void *)0x0;\n    local_78 = (uint *)0x0;\n    lVar29 = lVar28;\nLAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }\nLAB_00032d84:\n    iVar10 = FUN_00026dc0();\n    iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);\n    if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }\n    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;\nLAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;\n    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }\nLAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);\n    if (iVar9 != 0) goto LAB_00033426;\nLAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }\nLAB_000337ff:\n    free(local_78);\n    free(local_cc);\n  }" ({ "{") (expression_statement "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (identifier "uVar21") (= "=") (pointer_expression "*(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (* "*") (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x1e")) () ")"))))) (; ";")) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (* "*") (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x22")) () ")"))))) (; ";")) (expression_statement "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (identifier "lVar28") (= "=") (pointer_expression "*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (* "*") (cast_expression "(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (type_descriptor "longlong *" (type_identifier "longlong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x1e")) () ")"))))) (; ";")) (if_statement "if (iVar10 != 0 || uVar21 != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }" (if "if") (parenthesized_expression "(iVar10 != 0 || uVar21 != 0)" (( "(") (binary_expression "iVar10 != 0 || uVar21 != 0" (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "uVar21 != 0" (identifier "uVar21") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }\n      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n      if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }\nLAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_78 = (uint *)0x0;\n      lVar26 = lVar27;\n      lVar29 = lVar27;\n      lVar28 = lVar27;\n      goto LAB_000333c0;\n    }" ({ "{") (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);\n        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }\n        iVar10 = FUN_00026dc0();\n        iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);\n        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }\n        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }\n        free(local_78);\n        free(local_cc);\n        local_cc = (void *)0x0;\n        local_78 = (uint *)0x0;\n        lVar28 = 0;\n        lVar29 = 0;\n        goto LAB_0003325f;\n      }" ({ "{") (labeled_statement "LAB_00033f90:\n        sVar5 = *(short *)(iVar9 + 0x42);" (statement_identifier "LAB_00033f90") (: ":") (expression_statement "sVar5 = *(short *)(iVar9 + 0x42);" (assignment_expression "sVar5 = *(short *)(iVar9 + 0x42)" (identifier "sVar5") (= "=") (pointer_expression "*(short *)(iVar9 + 0x42)" (* "*") (cast_expression "(short *)(iVar9 + 0x42)" (( "(") (type_descriptor "short *" (sized_type_specifier "short" (short "short")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x42)" (( "(") (binary_expression "iVar9 + 0x42" (identifier "iVar9") (+ "+") (number_literal "0x42")) () ")"))))) (; ";"))) (if_statement "if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }" (if "if") (parenthesized_expression "((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70))" (( "(") (binary_expression "(sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)" (parenthesized_expression "(sVar5 == -0x6fda || sVar5 == 0x16)" (( "(") (binary_expression "sVar5 == -0x6fda || sVar5 == 0x16" (binary_expression "sVar5 == -0x6fda" (identifier "sVar5") (== "==") (number_literal "-0x6fda")) (|| "||") (binary_expression "sVar5 == 0x16" (identifier "sVar5") (== "==") (number_literal "0x16"))) () ")")) (|| "||") (parenthesized_expression "(sVar11 = 4, sVar5 == -0x5c70)" (( "(") (comma_expression "sVar11 = 4, sVar5 == -0x5c70" (assignment_expression "sVar11 = 4" (identifier "sVar11") (= "=") (number_literal "4")) (, ",") (binary_expression "sVar5 == -0x5c70" (identifier "sVar5") (== "==") (number_literal "-0x5c70"))) () ")"))) () ")")) (compound_statement "{\n          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;\n        }" ({ "{") (expression_statement "sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;" (assignment_expression "sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4" (identifier "sVar11") (= "=") (binary_expression "(uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4" (binary_expression "(uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4" (call_expression "(uint)(*(char *)(iVar9 + 0x14) == '\x02')" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*(char *)(iVar9 + 0x14) == '\x02')" (( "(") (binary_expression "*(char *)(iVar9 + 0x14) == '\x02'" (pointer_expression "*(char *)(iVar9 + 0x14)" (* "*") (cast_expression "(char *)(iVar9 + 0x14)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x14)" (( "(") (binary_expression "iVar9 + 0x14" (identifier "iVar9") (+ "+") (number_literal "0x14")) () ")")))) (== "==") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) () ")"))) (* "*") (number_literal "4")) (+ "+") (number_literal "4"))) (; ";")) (} "}"))) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" (identifier "iVar10") (= "=") (call_expression "FUN_00026dc0()" (identifier "FUN_00026dc0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0)" (identifier "iVar10") (= "=") (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0)" (identifier "fseek") (argument_list "(*(FILE **)(iVar9 + 4),\n                       iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26),0)" (( "(") (pointer_expression "*(FILE **)(iVar9 + 4)" (* "*") (cast_expression "(FILE **)(iVar9 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 4)" (( "(") (binary_expression "iVar9 + 4" (identifier "iVar9") (+ "+") (number_literal "4")) () ")")))) (, ",") (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" (identifier "iVar10") (+ "+") (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" (* "*") (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26)" (( "(") (binary_expression ""  Version:                           0x%lx\n" +\n                                        unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                        unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" (" """) (string_content "  Version:                           0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x26")) () ")"))))) (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }\n        else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }" (if "if") (parenthesized_expression "(((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1))" (( "(") (binary_expression "((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)" (parenthesized_expression "((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)\n            )" (( "(") (binary_expression "(iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)" (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)" (( "(") (comma_expression "sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1" (assignment_expression "sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4))" (identifier "sVar20") (= "=") (call_expression "fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4))" (identifier "fread") (argument_list "(local_34,sVar11,1,*(FILE **)(iVar9 + 4))" (( "(") (identifier "local_34") (, ",") (identifier "sVar11") (, ",") (number_literal "1") (, ",") (pointer_expression "*(FILE **)(iVar9 + 4)" (* "*") (cast_expression "(FILE **)(iVar9 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 4)" (( "(") (binary_expression "iVar9 + 4" (identifier "iVar9") (+ "+") (number_literal "4")) () ")")))) () ")")))) (, ",") (binary_expression "sVar20 == 1" (identifier "sVar20") (== "==") (number_literal "1"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)" (( "(") (comma_expression "sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1" (assignment_expression "sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4))" (identifier "sVar11") (= "=") (call_expression "fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4))" (identifier "fread") (argument_list "(local_2c,sVar11,1,*(FILE **)(iVar9 + 4))" (( "(") (identifier "local_2c") (, ",") (identifier "sVar11") (, ",") (number_literal "1") (, ",") (pointer_expression "*(FILE **)(iVar9 + 4)" (* "*") (cast_expression "(FILE **)(iVar9 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 4)" (( "(") (binary_expression "iVar9 + 4" (identifier "iVar9") (+ "+") (number_literal "4")) () ")")))) () ")")))) (, ",") (binary_expression "sVar11 == 1" (identifier "sVar11") (== "==") (number_literal "1"))) () ")"))) () ")")) (compound_statement "{\n          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();\n          local_78 = (uint *)FUN_0001e0f0();\n          local_cc = (void *)FUN_0001e0f0();\n          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;\n        }" ({ "{") (expression_statement "lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();" (assignment_expression "lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))()" (identifier "lVar28") (= "=") (call_expression "(**(code **)(&UNK_000870fe + unaff_EBP))()" (parenthesized_expression "(**(code **)(&UNK_000870fe + unaff_EBP))" (( "(") (pointer_expression "**(code **)(&UNK_000870fe + unaff_EBP)" (* "*") (pointer_expression "*(code **)(&UNK_000870fe + unaff_EBP)" (* "*") (cast_expression "(code **)(&UNK_000870fe + unaff_EBP)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(&UNK_000870fe + unaff_EBP)" (( "(") (binary_expression "&UNK_000870fe + unaff_EBP" (pointer_expression "&UNK_000870fe" (& "&") (identifier "UNK_000870fe")) (+ "+") (identifier "unaff_EBP")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();" (assignment_expression "lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))()" (identifier "lVar29") (= "=") (call_expression "(**(code **)(&UNK_000870fe + unaff_EBP))()" (parenthesized_expression "(**(code **)(&UNK_000870fe + unaff_EBP))" (( "(") (pointer_expression "**(code **)(&UNK_000870fe + unaff_EBP)" (* "*") (pointer_expression "*(code **)(&UNK_000870fe + unaff_EBP)" (* "*") (cast_expression "(code **)(&UNK_000870fe + unaff_EBP)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(&UNK_000870fe + unaff_EBP)" (( "(") (binary_expression "&UNK_000870fe + unaff_EBP" (pointer_expression "&UNK_000870fe" (& "&") (identifier "UNK_000870fe")) (+ "+") (identifier "unaff_EBP")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_78 = (uint *)FUN_0001e0f0();" (assignment_expression "local_78 = (uint *)FUN_0001e0f0()" (identifier "local_78") (= "=") (cast_expression "(uint *)FUN_0001e0f0()" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001e0f0()" (identifier "FUN_0001e0f0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "local_cc = (void *)FUN_0001e0f0();" (assignment_expression "local_cc = (void *)FUN_0001e0f0()" (identifier "local_cc") (= "=") (cast_expression "(void *)FUN_0001e0f0()" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001e0f0()" (identifier "FUN_0001e0f0") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;" (if "if") (parenthesized_expression "((local_78 != (uint *)0x0) && (local_cc != (void *)0x0))" (( "(") (binary_expression "(local_78 != (uint *)0x0) && (local_cc != (void *)0x0)" (parenthesized_expression "(local_78 != (uint *)0x0)" (( "(") (binary_expression "local_78 != (uint *)0x0" (identifier "local_78") (!= "!=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "(local_cc != (void *)0x0)" (( "(") (binary_expression "local_cc != (void *)0x0" (identifier "local_cc") (!= "!=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")"))) () ")")) (goto_statement "goto LAB_0003325f;" (goto "goto") (statement_identifier "LAB_0003325f") (; ";"))) (} "}")) (else_clause "else {\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }" (else "else") (compound_statement "{\n          dcgettext();\n          error();\n          local_cc = (void *)0x0;\n          local_78 = (uint *)0x0;\n        }" ({ "{") (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" (identifier "local_cc") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" (identifier "local_78") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n          return 0;\n        }" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x12")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          return 0;\n        }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "free(local_78);" (call_expression "free(local_78)" (identifier "free") (argument_list "(local_78)" (( "(") (identifier "local_78") () ")"))) (; ";")) (expression_statement "free(local_cc);" (call_expression "free(local_cc)" (identifier "free") (argument_list "(local_cc)" (( "(") (identifier "local_cc") () ")"))) (; ";")) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" (identifier "local_cc") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" (identifier "local_78") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" (identifier "lVar28") (= "=") (number_literal "0")) (; ";")) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" (identifier "lVar29") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_0003325f;" (goto "goto") (statement_identifier "LAB_0003325f") (; ";")) (} "}"))) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x12")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;\n        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);\n        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);\n        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\nLAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;\n        goto LAB_00032d84;\n      }" ({ "{") (if_statement "if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))\n        goto LAB_00033f90;" (if "if") (parenthesized_expression "((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))" (( "(") (binary_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)\n           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0)" (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x2e")) () ")")))) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0)" (( "(") (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" (* "*") (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" (( "(") (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 0xe" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" (" """) (string_content "  Version:                           0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0xe")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (goto_statement "goto LAB_00033f90;" (goto "goto") (statement_identifier "LAB_00033f90") (; ";"))) (expression_statement "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);" (assignment_expression "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (identifier "local_50") (= "=") (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (* "*") (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0xe")) () ")"))))) (; ";")) (expression_statement "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);" (assignment_expression "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (identifier "local_54") (= "=") (pointer_expression "*(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (* "*") (cast_expression "(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "10")) () ")"))))) (; ";")) (if_statement "if (local_54 == 0 && local_50 == 0) goto LAB_00033382;" (if "if") (parenthesized_expression "(local_54 == 0 && local_50 == 0)" (( "(") (binary_expression "local_54 == 0 && local_50 == 0" (binary_expression "local_54 == 0" (identifier "local_54") (== "==") (number_literal "0")) (&& "&&") (binary_expression "local_50 == 0" (identifier "local_50") (== "==") (number_literal "0"))) () ")")) (goto_statement "goto LAB_00033382;" (goto "goto") (statement_identifier "LAB_00033382") (; ";"))) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" (identifier "local_78") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" (identifier "lVar29") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" (identifier "local_cc") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" (identifier "lVar28") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_00033293:\n        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;" (statement_identifier "LAB_00033293") (: ":") (if_statement "if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))\n        goto LAB_000332b0;" (if "if") (parenthesized_expression "((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))" (( "(") (binary_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0)" (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x2e")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0)" (( "(") (binary_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0" (pointer_expression "*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" (* "*") (cast_expression "(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("  Version:                           0x%lx\n" + unaff_EBP + 0xe)" (( "(") (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP + 0xe" (binary_expression ""  Version:                           0x%lx\n" + unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" (" """) (string_content "  Version:                           0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0xe")) () ")")))) (== "==") (number_literal "0")) () ")"))) () ")")) (goto_statement "goto LAB_000332b0;" (goto "goto") (statement_identifier "LAB_000332b0") (; ";")))) (goto_statement "goto LAB_00032d84;" (goto "goto") (statement_identifier "LAB_00032d84") (; ";")) (} "}"))) (expression_statement "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);" (assignment_expression "local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (identifier "local_54") (= "=") (pointer_expression "*(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (* "*") (cast_expression "(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "10")) () ")"))))) (; ";")) (expression_statement "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);" (assignment_expression "local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (identifier "local_50") (= "=") (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (* "*") (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0xe")) () ")"))))) (; ";")) (if_statement "if (local_54 != 0 || local_50 != 0) {\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }" (if "if") (parenthesized_expression "(local_54 != 0 || local_50 != 0)" (( "(") (binary_expression "local_54 != 0 || local_50 != 0" (binary_expression "local_54 != 0" (identifier "local_54") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "local_50 != 0" (identifier "local_50") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n        local_78 = (uint *)0x0;\n        lVar29 = 0;\n        local_cc = (void *)0x0;\n        lVar28 = 0;\n        goto LAB_000332bc;\n      }" ({ "{") (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" (identifier "local_78") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" (identifier "lVar29") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" (identifier "local_cc") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" (identifier "lVar28") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_000332bc;" (goto "goto") (statement_identifier "LAB_000332bc") (; ";")) (} "}"))) (labeled_statement "LAB_00033382:\n      lVar27 = CONCAT44(local_50,local_54);" (statement_identifier "LAB_00033382") (: ":") (expression_statement "lVar27 = CONCAT44(local_50,local_54);" (assignment_expression "lVar27 = CONCAT44(local_50,local_54)" (identifier "lVar27") (= "=") (call_expression "CONCAT44(local_50,local_54)" (identifier "CONCAT44") (argument_list "(local_50,local_54)" (( "(") (identifier "local_50") (, ",") (identifier "local_54") () ")")))) (; ";"))) (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" (identifier "local_90") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" (identifier "local_6c") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" (identifier "local_cc") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" (identifier "local_78") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "lVar26 = lVar27;" (assignment_expression "lVar26 = lVar27" (identifier "lVar26") (= "=") (identifier "lVar27")) (; ";")) (expression_statement "lVar29 = lVar27;" (assignment_expression "lVar29 = lVar27" (identifier "lVar29") (= "=") (identifier "lVar27")) (; ";")) (expression_statement "lVar28 = lVar27;" (assignment_expression "lVar28 = lVar27" (identifier "lVar28") (= "=") (identifier "lVar27")) (; ";")) (goto_statement "goto LAB_000333c0;" (goto "goto") (statement_identifier "LAB_000333c0") (; ";")) (} "}"))) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" (identifier "local_cc") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_78 = (uint *)0x0;" (assignment_expression "local_78 = (uint *)0x0" (identifier "local_78") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "lVar29 = lVar28;" (assignment_expression "lVar29 = lVar28" (identifier "lVar29") (= "=") (identifier "lVar28")) (; ";")) (labeled_statement "LAB_0003325f:\n    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;" (statement_identifier "LAB_0003325f") (: ":") (if_statement "if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)\n    goto LAB_00033740;" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&\n        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (* "*") (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0xe")) () ")")))) (== "==") (number_literal "0")) (&& "&&") (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (* "*") (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "10")) () ")")))) (== "==") (number_literal "0"))) () ")")) (goto_statement "goto LAB_00033740;" (goto "goto") (statement_identifier "LAB_00033740") (; ";")))) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;\nLAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);\n      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);\n      goto LAB_000332bc;\n    }" ({ "{") (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_00033293;" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x12")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00033293;" (goto "goto") (statement_identifier "LAB_00033293") (; ";"))) (labeled_statement "LAB_000332b0:\n      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (statement_identifier "LAB_000332b0") (: ":") (expression_statement "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (identifier "uVar21") (= "=") (pointer_expression "*(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (* "*") (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x1e")) () ")"))))) (; ";"))) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (* "*") (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x22")) () ")"))))) (; ";")) (goto_statement "goto LAB_000332bc;" (goto "goto") (statement_identifier "LAB_000332bc") (; ";")) (} "}"))) (labeled_statement "LAB_00032d84:\n    iVar10 = FUN_00026dc0();" (statement_identifier "LAB_00032d84") (: ":") (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" (identifier "iVar10") (= "=") (call_expression "FUN_00026dc0()" (identifier "FUN_00026dc0") (argument_list "()" (( "(") () ")")))) (; ";"))) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0)" (identifier "iVar10") (= "=") (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0)" (identifier "fseek") (argument_list "(*(FILE **)(iVar9 + 4),\n                   iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26),0)" (( "(") (pointer_expression "*(FILE **)(iVar9 + 4)" (* "*") (cast_expression "(FILE **)(iVar9 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 4)" (( "(") (binary_expression "iVar9 + 4" (identifier "iVar9") (+ "+") (number_literal "4")) () ")")))) (, ",") (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" (identifier "iVar10") (+ "+") (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" (* "*") (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26)" (( "(") (binary_expression ""  Version:                           0x%lx\n" +\n                                    unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                    unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" (" """) (string_content "  Version:                           0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x26")) () ")"))))) (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (iVar10 == 0) {\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }\n    else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));\n      if (sVar11 != 1) goto LAB_00034303;\n      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);\n      lVar26 = (*(code *)*puVar1)();\n      lVar27 = (*(code *)*puVar1)();\n      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);\n      uVar21 = (uint)lVar27;\n      (*(code *)*puVar1)();\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }\n      local_6c = (uint *)FUN_0001e0f0();\n      if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      if (lVar26 == 0) goto LAB_00034347;\n      local_54 = 0;\n      local_50 = 0;\n      local_ec = 0xffffffff;\n      uStack_e8 = 0;\n      do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));\n      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;\n      uVar12 = local_ec - uVar21;\n      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }\n      do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);\n      iVar10 = FUN_00026dc0();\n      iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);\n      if (iVar10 != 0) goto LAB_00033073;\n      local_90 = (void *)FUN_0001e0f0();\n      if (local_90 == (void *)0x0) goto LAB_00034347;\n    }" ({ "{") (expression_statement "sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));" (assignment_expression "sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4))" (identifier "sVar11") (= "=") (call_expression "fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4))" (identifier "fread") (argument_list "(local_2c,0x10,1,*(FILE **)(iVar9 + 4))" (( "(") (identifier "local_2c") (, ",") (number_literal "0x10") (, ",") (number_literal "1") (, ",") (pointer_expression "*(FILE **)(iVar9 + 4)" (* "*") (cast_expression "(FILE **)(iVar9 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 4)" (( "(") (binary_expression "iVar9 + 4" (identifier "iVar9") (+ "+") (number_literal "4")) () ")")))) () ")")))) (; ";")) (if_statement "if (sVar11 != 1) goto LAB_00034303;" (if "if") (parenthesized_expression "(sVar11 != 1)" (( "(") (binary_expression "sVar11 != 1" (identifier "sVar11") (!= "!=") (number_literal "1")) () ")")) (goto_statement "goto LAB_00034303;" (goto "goto") (statement_identifier "LAB_00034303") (; ";"))) (expression_statement "puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);" (assignment_expression "puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP)" (identifier "puVar1") (= "=") (cast_expression "(undefined4 *)(&UNK_000870fe + unaff_EBP)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&UNK_000870fe + unaff_EBP)" (( "(") (binary_expression "&UNK_000870fe + unaff_EBP" (pointer_expression "&UNK_000870fe" (& "&") (identifier "UNK_000870fe")) (+ "+") (identifier "unaff_EBP")) () ")")))) (; ";")) (expression_statement "lVar26 = (*(code *)*puVar1)();" (assignment_expression "lVar26 = (*(code *)*puVar1)()" (identifier "lVar26") (= "=") (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" (( "(") (pointer_expression "*(code *)*puVar1" (* "*") (cast_expression "(code *)*puVar1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar1" (* "*") (identifier "puVar1")))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "lVar27 = (*(code *)*puVar1)();" (assignment_expression "lVar27 = (*(code *)*puVar1)()" (identifier "lVar27") (= "=") (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" (( "(") (pointer_expression "*(code *)*puVar1" (* "*") (cast_expression "(code *)*puVar1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar1" (* "*") (identifier "puVar1")))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar23 = (uint)((ulonglong)lVar27 >> 0x20);" (assignment_expression "uVar23 = (uint)((ulonglong)lVar27 >> 0x20)" (identifier "uVar23") (= "=") (call_expression "(uint)((ulonglong)lVar27 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)lVar27 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar27 >> 0x20" (cast_expression "(ulonglong)lVar27" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar27")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "uVar21 = (uint)lVar27;" (assignment_expression "uVar21 = (uint)lVar27" (identifier "uVar21") (= "=") (cast_expression "(uint)lVar27" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar27"))) (; ";")) (expression_statement "(*(code *)*puVar1)();" (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" (( "(") (pointer_expression "*(code *)*puVar1" (* "*") (cast_expression "(code *)*puVar1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar1" (* "*") (identifier "puVar1")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" (identifier "iVar10") (= "=") (call_expression "FUN_00026dc0()" (identifier "FUN_00026dc0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" (identifier "iVar10") (= "=") (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" (identifier "fseek") (argument_list "(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" (( "(") (pointer_expression "*(FILE **)(iVar9 + 4)" (* "*") (cast_expression "(FILE **)(iVar9 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 4)" (( "(") (binary_expression "iVar9 + 4" (identifier "iVar9") (+ "+") (number_literal "4")) () ")")))) (, ",") (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (identifier "iVar10") (+ "+") (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (* "*") (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (( "(") (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" (" """) (string_content "  Version:                           0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x26")) () ")"))))) (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        dcgettext();\n        error();\n        lVar26 = 0;\n        local_6c = (uint *)0x0;\n        goto LAB_00034347;\n      }" ({ "{") (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" (identifier "lVar26") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" (identifier "local_6c") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00034347;" (goto "goto") (statement_identifier "LAB_00034347") (; ";")) (} "}"))) (expression_statement "local_6c = (uint *)FUN_0001e0f0();" (assignment_expression "local_6c = (uint *)FUN_0001e0f0()" (identifier "local_6c") (= "=") (cast_expression "(uint *)FUN_0001e0f0()" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001e0f0()" (identifier "FUN_0001e0f0") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if (local_6c == (uint *)0x0) {\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" (if "if") (parenthesized_expression "(local_6c == (uint *)0x0)" (( "(") (binary_expression "local_6c == (uint *)0x0" (identifier "local_6c") (== "==") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000346fb:\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" ({ "{") (labeled_statement "LAB_000346fb:\n        lVar26 = 0;" (statement_identifier "LAB_000346fb") (: ":") (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" (identifier "lVar26") (= "=") (number_literal "0")) (; ";"))) (goto_statement "goto LAB_00034347;" (goto "goto") (statement_identifier "LAB_00034347") (; ";")) (} "}"))) (if_statement "if (lVar26 == 0) goto LAB_00034347;" (if "if") (parenthesized_expression "(lVar26 == 0)" (( "(") (binary_expression "lVar26 == 0" (identifier "lVar26") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00034347;" (goto "goto") (statement_identifier "LAB_00034347") (; ";"))) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" (identifier "local_54") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" (identifier "local_50") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_ec = 0xffffffff;" (assignment_expression "local_ec = 0xffffffff" (identifier "local_ec") (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "uStack_e8 = 0;" (assignment_expression "uStack_e8 = 0" (identifier "uStack_e8") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      } while (lVar26 != CONCAT44(local_50,local_54));" (do "do") (compound_statement "{\n        uVar12 = local_6c[local_54 * 2];\n        uVar24 = (local_6c + local_54 * 2)[1];\n        if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }\n        bVar25 = 0xfffffffe < local_54;\n        local_54 = local_54 + 1;\n        local_50 = local_50 + (uint)bVar25;\n      }" ({ "{") (expression_statement "uVar12 = local_6c[local_54 * 2];" (assignment_expression "uVar12 = local_6c[local_54 * 2]" (identifier "uVar12") (= "=") (subscript_expression "local_6c[local_54 * 2]" (identifier "local_6c") ([ "[") (binary_expression "local_54 * 2" (identifier "local_54") (* "*") (number_literal "2")) (] "]"))) (; ";")) (expression_statement "uVar24 = (local_6c + local_54 * 2)[1];" (assignment_expression "uVar24 = (local_6c + local_54 * 2)[1]" (identifier "uVar24") (= "=") (subscript_expression "(local_6c + local_54 * 2)[1]" (parenthesized_expression "(local_6c + local_54 * 2)" (( "(") (binary_expression "local_6c + local_54 * 2" (identifier "local_6c") (+ "+") (binary_expression "local_54 * 2" (identifier "local_54") (* "*") (number_literal "2"))) () ")")) ([ "[") (number_literal "1") (] "]"))) (; ";")) (if_statement "if (uVar24 != 0 || uVar12 != 0) {\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }" (if "if") (parenthesized_expression "(uVar24 != 0 || uVar12 != 0)" (( "(") (binary_expression "uVar24 != 0 || uVar12 != 0" (binary_expression "uVar24 != 0" (identifier "uVar24") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "uVar12 != 0" (identifier "uVar12") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }\n          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }\n        }" ({ "{") (if_statement "if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {\n            return 0;\n          }" (if "if") (parenthesized_expression "(uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21))" (( "(") (binary_expression "uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)" (binary_expression "uVar24 < uVar23" (identifier "uVar24") (< "<") (identifier "uVar23")) (|| "||") (binary_expression "uVar24 - uVar23 < (uint)(uVar12 < uVar21)" (binary_expression "uVar24 - uVar23" (identifier "uVar24") (- "-") (identifier "uVar23")) (< "<") (call_expression "(uint)(uVar12 < uVar21)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar12 < uVar21)" (( "(") (binary_expression "uVar12 < uVar21" (identifier "uVar12") (< "<") (identifier "uVar21")) () ")"))))) () ")")) (compound_statement "{\n            return 0;\n          }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (if_statement "if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)) {\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }" (if "if") (parenthesized_expression "((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0))" (( "(") (binary_expression "(uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||\n             (local_ec == 0xffffffff && uStack_e8 == 0)" (parenthesized_expression "(uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12))" (( "(") (binary_expression "uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)" (binary_expression "uStack_e8 < uVar24" (identifier "uStack_e8") (< "<") (identifier "uVar24")) (|| "||") (binary_expression "uStack_e8 - uVar24 < (uint)(local_ec < uVar12)" (binary_expression "uStack_e8 - uVar24" (identifier "uStack_e8") (- "-") (identifier "uVar24")) (< "<") (call_expression "(uint)(local_ec < uVar12)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_ec < uVar12)" (( "(") (binary_expression "local_ec < uVar12" (identifier "local_ec") (< "<") (identifier "uVar12")) () ")"))))) () ")")) (|| "||") (parenthesized_expression "(local_ec == 0xffffffff && uStack_e8 == 0)" (( "(") (binary_expression "local_ec == 0xffffffff && uStack_e8 == 0" (binary_expression "local_ec == 0xffffffff" (identifier "local_ec") (== "==") (number_literal "0xffffffff")) (&& "&&") (binary_expression "uStack_e8 == 0" (identifier "uStack_e8") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n            local_ec = uVar12;\n            uStack_e8 = uVar24;\n          }" ({ "{") (expression_statement "local_ec = uVar12;" (assignment_expression "local_ec = uVar12" (identifier "local_ec") (= "=") (identifier "uVar12")) (; ";")) (expression_statement "uStack_e8 = uVar24;" (assignment_expression "uStack_e8 = uVar24" (identifier "uStack_e8") (= "=") (identifier "uVar24")) (; ";")) (} "}"))) (} "}"))) (expression_statement "bVar25 = 0xfffffffe < local_54;" (assignment_expression "bVar25 = 0xfffffffe < local_54" (identifier "bVar25") (= "=") (binary_expression "0xfffffffe < local_54" (number_literal "0xfffffffe") (< "<") (identifier "local_54"))) (; ";")) (expression_statement "local_54 = local_54 + 1;" (assignment_expression "local_54 = local_54 + 1" (identifier "local_54") (= "=") (binary_expression "local_54 + 1" (identifier "local_54") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "local_50 = local_50 + (uint)bVar25;" (assignment_expression "local_50 = local_50 + (uint)bVar25" (identifier "local_50") (= "=") (binary_expression "local_50 + (uint)bVar25" (identifier "local_50") (+ "+") (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(lVar26 != CONCAT44(local_50,local_54))" (( "(") (binary_expression "lVar26 != CONCAT44(local_50,local_54)" (identifier "lVar26") (!= "!=") (call_expression "CONCAT44(local_50,local_54)" (identifier "CONCAT44") (argument_list "(local_50,local_54)" (( "(") (identifier "local_50") (, ",") (identifier "local_54") () ")")))) () ")")) (; ";")) (if_statement "if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;" (if "if") (parenthesized_expression "(uStack_e8 == 0 && local_ec == 0xffffffff)" (( "(") (binary_expression "uStack_e8 == 0 && local_ec == 0xffffffff" (binary_expression "uStack_e8 == 0" (identifier "uStack_e8") (== "==") (number_literal "0")) (&& "&&") (binary_expression "local_ec == 0xffffffff" (identifier "local_ec") (== "==") (number_literal "0xffffffff"))) () ")")) (goto_statement "goto LAB_000346fb;" (goto "goto") (statement_identifier "LAB_000346fb") (; ";"))) (expression_statement "uVar12 = local_ec - uVar21;" (assignment_expression "uVar12 = local_ec - uVar21" (identifier "uVar12") (= "=") (binary_expression "local_ec - uVar21" (identifier "local_ec") (- "-") (identifier "uVar21"))) (; ";")) (expression_statement "uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);" (assignment_expression "uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21)" (identifier "uVar21") (= "=") (binary_expression "(uStack_e8 - uVar23) - (uint)(local_ec < uVar21)" (parenthesized_expression "(uStack_e8 - uVar23)" (( "(") (binary_expression "uStack_e8 - uVar23" (identifier "uStack_e8") (- "-") (identifier "uVar23")) () ")")) (- "-") (call_expression "(uint)(local_ec < uVar21)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_ec < uVar21)" (( "(") (binary_expression "local_ec < uVar21" (identifier "local_ec") (< "<") (identifier "uVar21")) () ")"))))) (; ";")) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" (identifier "iVar10") (= "=") (call_expression "FUN_00026dc0()" (identifier "FUN_00026dc0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" (identifier "iVar10") (= "=") (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" (identifier "fseek") (argument_list "(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" (( "(") (pointer_expression "*(FILE **)(iVar9 + 4)" (* "*") (cast_expression "(FILE **)(iVar9 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 4)" (( "(") (binary_expression "iVar9 + 4" (identifier "iVar9") (+ "+") (number_literal "4")) () ")")))) (, ",") (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (identifier "iVar10") (+ "+") (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (* "*") (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (( "(") (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" (" """) (string_content "  Version:                           0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x26")) () ")"))))) (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00033073:\n        dcgettext();\n        error();\n        lVar26 = 0;\n        goto LAB_00034347;\n      }" ({ "{") (labeled_statement "LAB_00033073:\n        dcgettext();" (statement_identifier "LAB_00033073") (: ":") (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";"))) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" (identifier "lVar26") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_00034347;" (goto "goto") (statement_identifier "LAB_00034347") (; ";")) (} "}"))) (do_statement "do {\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      } while ((uVar23 & 1) == 0);" (do "do") (compound_statement "{\n        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));\n        if (sVar11 != 1) goto LAB_00033073;\n        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;\n        bVar25 = 0xfffffffe < uVar12;\n        uVar12 = uVar12 + 1;\n        uVar21 = uVar21 + bVar25;\n        lVar26 = CONCAT44(uVar21,uVar12);\n        uVar23 = (*(code *)*puVar1)();\n      }" ({ "{") (expression_statement "sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));" (assignment_expression "sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4))" (identifier "sVar11") (= "=") (call_expression "fread(local_2c,4,1,*(FILE **)(iVar9 + 4))" (identifier "fread") (argument_list "(local_2c,4,1,*(FILE **)(iVar9 + 4))" (( "(") (identifier "local_2c") (, ",") (number_literal "4") (, ",") (number_literal "1") (, ",") (pointer_expression "*(FILE **)(iVar9 + 4)" (* "*") (cast_expression "(FILE **)(iVar9 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 4)" (( "(") (binary_expression "iVar9 + 4" (identifier "iVar9") (+ "+") (number_literal "4")) () ")")))) () ")")))) (; ";")) (if_statement "if (sVar11 != 1) goto LAB_00033073;" (if "if") (parenthesized_expression "(sVar11 != 1)" (( "(") (binary_expression "sVar11 != 1" (identifier "sVar11") (!= "!=") (number_literal "1")) () ")")) (goto_statement "goto LAB_00033073;" (goto "goto") (statement_identifier "LAB_00033073") (; ";"))) (if_statement "if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;" (if "if") (parenthesized_expression "((uVar21 & uVar12) == 0xffffffff)" (( "(") (binary_expression "(uVar21 & uVar12) == 0xffffffff" (parenthesized_expression "(uVar21 & uVar12)" (( "(") (binary_expression "uVar21 & uVar12" (identifier "uVar21") (& "&") (identifier "uVar12")) () ")")) (== "==") (number_literal "0xffffffff")) () ")")) (goto_statement "goto LAB_000346fb;" (goto "goto") (statement_identifier "LAB_000346fb") (; ";"))) (expression_statement "bVar25 = 0xfffffffe < uVar12;" (assignment_expression "bVar25 = 0xfffffffe < uVar12" (identifier "bVar25") (= "=") (binary_expression "0xfffffffe < uVar12" (number_literal "0xfffffffe") (< "<") (identifier "uVar12"))) (; ";")) (expression_statement "uVar12 = uVar12 + 1;" (assignment_expression "uVar12 = uVar12 + 1" (identifier "uVar12") (= "=") (binary_expression "uVar12 + 1" (identifier "uVar12") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar21 = uVar21 + bVar25;" (assignment_expression "uVar21 = uVar21 + bVar25" (identifier "uVar21") (= "=") (binary_expression "uVar21 + bVar25" (identifier "uVar21") (+ "+") (identifier "bVar25"))) (; ";")) (expression_statement "lVar26 = CONCAT44(uVar21,uVar12);" (assignment_expression "lVar26 = CONCAT44(uVar21,uVar12)" (identifier "lVar26") (= "=") (call_expression "CONCAT44(uVar21,uVar12)" (identifier "CONCAT44") (argument_list "(uVar21,uVar12)" (( "(") (identifier "uVar21") (, ",") (identifier "uVar12") () ")")))) (; ";")) (expression_statement "uVar23 = (*(code *)*puVar1)();" (assignment_expression "uVar23 = (*(code *)*puVar1)()" (identifier "uVar23") (= "=") (call_expression "(*(code *)*puVar1)()" (parenthesized_expression "(*(code *)*puVar1)" (( "(") (pointer_expression "*(code *)*puVar1" (* "*") (cast_expression "(code *)*puVar1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar1" (* "*") (identifier "puVar1")))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((uVar23 & 1) == 0)" (( "(") (binary_expression "(uVar23 & 1) == 0" (parenthesized_expression "(uVar23 & 1)" (( "(") (binary_expression "uVar23 & 1" (identifier "uVar23") (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (; ";")) (expression_statement "iVar10 = FUN_00026dc0();" (assignment_expression "iVar10 = FUN_00026dc0()" (identifier "iVar10") (= "=") (call_expression "FUN_00026dc0()" (identifier "FUN_00026dc0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0);" (assignment_expression "iVar10 = fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" (identifier "iVar10") (= "=") (call_expression "fseek(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" (identifier "fseek") (argument_list "(*(FILE **)(iVar9 + 4),\n                     iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26),0)" (( "(") (pointer_expression "*(FILE **)(iVar9 + 4)" (* "*") (cast_expression "(FILE **)(iVar9 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 4)" (( "(") (binary_expression "iVar9 + 4" (identifier "iVar9") (+ "+") (number_literal "4")) () ")")))) (, ",") (binary_expression "iVar10 + *(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (identifier "iVar10") (+ "+") (pointer_expression "*(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (* "*") (cast_expression "(int *)("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26)" (( "(") (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP + 0x26" (binary_expression ""  Version:                           0x%lx\n" +\n                                      unaff_EBP" (string_literal ""  Version:                           0x%lx\n"" (" """) (string_content "  Version:                           0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x26")) () ")"))))) (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (iVar10 != 0) goto LAB_00033073;" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00033073;" (goto "goto") (statement_identifier "LAB_00033073") (; ";"))) (expression_statement "local_90 = (void *)FUN_0001e0f0();" (assignment_expression "local_90 = (void *)FUN_0001e0f0()" (identifier "local_90") (= "=") (cast_expression "(void *)FUN_0001e0f0()" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001e0f0()" (identifier "FUN_0001e0f0") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if (local_90 == (void *)0x0) goto LAB_00034347;" (if "if") (parenthesized_expression "(local_90 == (void *)0x0)" (( "(") (binary_expression "local_90 == (void *)0x0" (identifier "local_90") (== "==") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00034347;" (goto "goto") (statement_identifier "LAB_00034347") (; ";"))) (} "}")) (else_clause "else {\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" (else "else") (compound_statement "{\nLAB_00034303:\n      dcgettext();\n      error();\n      lVar26 = 0;\n      lVar27 = 0;\n      local_6c = (uint *)0x0;\nLAB_00034347:\n      free(local_6c);\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }\n      local_90 = (void *)0x0;\n      local_6c = (uint *)0x0;\n      local_54 = 0;\n      local_50 = 0;\n    }" ({ "{") (labeled_statement "LAB_00034303:\n      dcgettext();" (statement_identifier "LAB_00034303") (: ":") (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";"))) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" (identifier "lVar26") (= "=") (number_literal "0")) (; ";")) (expression_statement "lVar27 = 0;" (assignment_expression "lVar27 = 0" (identifier "lVar27") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" (identifier "local_6c") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_00034347:\n      free(local_6c);" (statement_identifier "LAB_00034347") (: ":") (expression_statement "free(local_6c);" (call_expression "free(local_6c)" (identifier "free") (argument_list "(local_6c)" (( "(") (identifier "local_6c") () ")"))) (; ";"))) (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {\n        return 0;\n      }" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x12")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        return 0;\n      }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "local_90 = (void *)0x0;" (assignment_expression "local_90 = (void *)0x0" (identifier "local_90") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_6c = (uint *)0x0;" (assignment_expression "local_6c = (uint *)0x0" (identifier "local_6c") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" (identifier "local_54") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" (identifier "local_50") (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);" (assignment_expression "uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (identifier "uVar21") (= "=") (pointer_expression "*(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (* "*") (cast_expression "(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x1e")) () ")"))))) (; ";")) (expression_statement "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);" (assignment_expression "iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (* "*") (cast_expression "(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22)" (( "(") (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22" (binary_expression ""Skipping unknown C6000 relocation type: %d\n" + unaff_EBP" (string_literal ""Skipping unknown C6000 relocation type: %d\n"" (" """) (string_content "Skipping unknown C6000 relocation type: %d") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x22")) () ")"))))) (; ";")) (if_statement "if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)) goto LAB_000333c0;" (if "if") (parenthesized_expression "((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0))" (( "(") (binary_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0) ||\n        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)" (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||\n        iVar10 != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (* "*") (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0xe")) () ")")))) (!= "!=") (number_literal "0")) (|| "||") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0"))) () ")")) (|| "||") (parenthesized_expression "(*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||\n        uVar21 != 0" (binary_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0" (pointer_expression "*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (* "*") (cast_expression "(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10)" (( "(") (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10" (binary_expression ""Skipping unexpected ARM relocation type %s\n" + unaff_EBP" (string_literal ""Skipping unexpected ARM relocation type %s\n"" (" """) (string_content "Skipping unexpected ARM relocation type %s") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "10")) () ")")))) (!= "!=") (number_literal "0")) (|| "||") (binary_expression "uVar21 != 0" (identifier "uVar21") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (goto_statement "goto LAB_000333c0;" (goto "goto") (statement_identifier "LAB_000333c0") (; ";"))) (labeled_statement "LAB_0003378f:\n    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;" (statement_identifier "LAB_0003378f") (: ":") (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)\n    goto LAB_00033a30;" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x2e")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00033a30;" (goto "goto") (statement_identifier "LAB_00033a30") (; ";")))) (if_statement "if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }" (if "if") (parenthesized_expression "(*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0)" (( "(") (binary_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0" (pointer_expression "*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Unknown section relocation type %d encountered\n" + unaff_EBP + 2)" (( "(") (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP + 2" (binary_expression ""Unknown section relocation type %d encountered\n" + unaff_EBP" (string_literal ""Unknown section relocation type %d encountered\n"" (" """) (string_content "Unknown section relocation type %d encountered") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;\nLAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);\n      if (local_ec == 0) goto LAB_000337b9;\n      goto LAB_00033a43;\n    }" ({ "{") (if_statement "if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)\n      goto LAB_000337b9;" (if "if") (parenthesized_expression "(*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)" (( "(") (binary_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0" (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "0x12")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000337b9;" (goto "goto") (statement_identifier "LAB_000337b9") (; ";"))) (labeled_statement "LAB_000341b6:\n      local_ec = *(int *)(iVar9 + 0x5c);" (statement_identifier "LAB_000341b6") (: ":") (expression_statement "local_ec = *(int *)(iVar9 + 0x5c);" (assignment_expression "local_ec = *(int *)(iVar9 + 0x5c)" (identifier "local_ec") (= "=") (pointer_expression "*(int *)(iVar9 + 0x5c)" (* "*") (cast_expression "(int *)(iVar9 + 0x5c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x5c)" (( "(") (binary_expression "iVar9 + 0x5c" (identifier "iVar9") (+ "+") (number_literal "0x5c")) () ")"))))) (; ";"))) (if_statement "if (local_ec == 0) goto LAB_000337b9;" (if "if") (parenthesized_expression "(local_ec == 0)" (( "(") (binary_expression "local_ec == 0" (identifier "local_ec") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000337b9;" (goto "goto") (statement_identifier "LAB_000337b9") (; ";"))) (goto_statement "goto LAB_00033a43;" (goto "goto") (statement_identifier "LAB_00033a43") (; ";")) (} "}"))) (labeled_statement "LAB_00033418:\n    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" (statement_identifier "LAB_00033418") (: ":") (expression_statement "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);" (assignment_expression "iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (* "*") (cast_expression "(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2)" (( "(") (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2" (binary_expression ""Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP" (string_literal ""Skipping unexpected relocation at offset 0x%lx\n"" (" """) (string_content "Skipping unexpected relocation at offset 0x%lx") (escape_sequence "\n") (" """)) (+ "+") (identifier "unaff_EBP")) (+ "+") (number_literal "2")) () ")"))))) (; ";"))) (if_statement "if (iVar9 != 0) goto LAB_00033426;" (if "if") (parenthesized_expression "(iVar9 != 0)" (( "(") (binary_expression "iVar9 != 0" (identifier "iVar9") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00033426;" (goto "goto") (statement_identifier "LAB_00033426") (; ";"))) (labeled_statement "LAB_000337f0:\n    if (local_78 == (uint *)0x0) {\n      return 1;\n    }" (statement_identifier "LAB_000337f0") (: ":") (if_statement "if (local_78 == (uint *)0x0) {\n      return 1;\n    }" (if "if") (parenthesized_expression "(local_78 == (uint *)0x0)" (( "(") (binary_expression "local_78 == (uint *)0x0" (identifier "local_78") (== "==") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      return 1;\n    }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}")))) (labeled_statement "LAB_000337ff:\n    free(local_78);" (statement_identifier "LAB_000337ff") (: ":") (expression_statement "free(local_78);" (call_expression "free(local_78)" (identifier "free") (argument_list "(local_78)" (( "(") (identifier "local_78") () ")"))) (; ";"))) (expression_statement "free(local_cc);" (call_expression "free(local_cc)" (identifier "free") (argument_list "(local_cc)" (( "(") (identifier "local_cc") () ")"))) (; ";")) (} "}")))) (expression_statement "local_70 = (uint)((ulonglong)lVar26 >> 0x20);" (assignment_expression "local_70 = (uint)((ulonglong)lVar26 >> 0x20)" (identifier "local_70") (= "=") (call_expression "(uint)((ulonglong)lVar26 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)lVar26 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar26 >> 0x20" (cast_expression "(ulonglong)lVar26" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar26")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "local_74 = (uint)lVar26;" (assignment_expression "local_74 = (uint)lVar26" (identifier "local_74") (= "=") (cast_expression "(uint)lVar26" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar26"))) (; ";")) (expression_statement "local_88 = (int)((ulonglong)lVar27 >> 0x20);" (assignment_expression "local_88 = (int)((ulonglong)lVar27 >> 0x20)" (identifier "local_88") (= "=") (cast_expression "(int)((ulonglong)lVar27 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar27 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar27 >> 0x20" (cast_expression "(ulonglong)lVar27" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar27")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "local_8c = (uint)lVar27;" (assignment_expression "local_8c = (uint)lVar27" (identifier "local_8c") (= "=") (cast_expression "(uint)lVar27" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar27"))) (; ";")) (if_statement "if (local_6c == (uint *)0x0) {\n    return 1;\n  }" (if "if") (parenthesized_expression "(local_6c == (uint *)0x0)" (( "(") (binary_expression "local_6c == (uint *)0x0" (identifier "local_6c") (== "==") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    return 1;\n  }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (iVar9 == 0) {\n    return 1;\n  }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return 1;\n  }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);" (assignment_expression "pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" (identifier "dcngettext") (argument_list "(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54)" (( "(") (number_literal "0") (, ",") (binary_expression "&UNK_00050fb6 + unaff_EBP" (pointer_expression "&UNK_00050fb6" (& "&") (identifier "UNK_00050fb6")) (+ "+") (identifier "unaff_EBP")) (, ",") (binary_expression "&UNK_00050f6e + unaff_EBP" (pointer_expression "&UNK_00050f6e" (& "&") (identifier "UNK_00050f6e")) (+ "+") (identifier "unaff_EBP")) (, ",") (identifier "local_54") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,local_54);" (call_expression "printf(pcVar17,local_54)" (identifier "printf") (argument_list "(pcVar17,local_54)" (( "(") (identifier "pcVar17") (, ",") (identifier "local_54") () ")"))) (; ";")) (expression_statement "puVar18 = (uint *)calloc(local_54,4);" (assignment_expression "puVar18 = (uint *)calloc(local_54,4)" (identifier "puVar18") (= "=") (cast_expression "(uint *)calloc(local_54,4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "calloc(local_54,4)" (identifier "calloc") (argument_list "(local_54,4)" (( "(") (identifier "local_54") (, ",") (number_literal "4") () ")"))))) (; ";")) (if_statement "if (puVar18 != (uint *)0x0) {\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }" (if "if") (parenthesized_expression "(puVar18 != (uint *)0x0)" (( "(") (binary_expression "puVar18 != (uint *)0x0" (identifier "puVar18") (!= "!=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    puVar31 = &UNK_00050ee6 + unaff_EBP;\n    uVar32 = 5;\n    pcVar17 = (char *)dcgettext();\n    printf(pcVar17,puVar31,uVar32);\n    if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }\n    free(puVar18);\n  }" ({ "{") (expression_statement "puVar31 = &UNK_00050ee6 + unaff_EBP;" (assignment_expression "puVar31 = &UNK_00050ee6 + unaff_EBP" (identifier "puVar31") (= "=") (binary_expression "&UNK_00050ee6 + unaff_EBP" (pointer_expression "&UNK_00050ee6" (& "&") (identifier "UNK_00050ee6")) (+ "+") (identifier "unaff_EBP"))) (; ";")) (expression_statement "uVar32 = 5;" (assignment_expression "uVar32 = 5" (identifier "uVar32") (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar17 = (char *)dcgettext();" (assignment_expression "pcVar17 = (char *)dcgettext()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "printf(pcVar17,puVar31,uVar32);" (call_expression "printf(pcVar17,puVar31,uVar32)" (identifier "printf") (argument_list "(pcVar17,puVar31,uVar32)" (( "(") (identifier "pcVar17") (, ",") (identifier "puVar31") (, ",") (identifier "uVar32") () ")"))) (; ";")) (if_statement "if (local_50 == 0 && local_54 == 0) {\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }\n    else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" (if "if") (parenthesized_expression "(local_50 == 0 && local_54 == 0)" (( "(") (binary_expression "local_50 == 0 && local_54 == 0" (binary_expression "local_50 == 0" (identifier "local_50") (== "==") (number_literal "0")) (&& "&&") (binary_expression "local_54 == 0" (identifier "local_54") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n      puVar13 = (uint *)calloc(1,4);\n      if (puVar13 != (uint *)0x0) goto LAB_000331cb;\n    }" ({ "{") (expression_statement "puVar13 = (uint *)calloc(1,4);" (assignment_expression "puVar13 = (uint *)calloc(1,4)" (identifier "puVar13") (= "=") (cast_expression "(uint *)calloc(1,4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "calloc(1,4)" (identifier "calloc") (argument_list "(1,4)" (( "(") (number_literal "1") (, ",") (number_literal "4") () ")"))))) (; ";")) (if_statement "if (puVar13 != (uint *)0x0) goto LAB_000331cb;" (if "if") (parenthesized_expression "(puVar13 != (uint *)0x0)" (( "(") (binary_expression "puVar13 != (uint *)0x0" (identifier "puVar13") (!= "!=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000331cb;" (goto "goto") (statement_identifier "LAB_000331cb") (; ";"))) (} "}")) (else_clause "else {\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" (else "else") (compound_statement "{\n      local_c4 = (uint *)0x0;\n      local_cc = (void *)0x0;\n      local_f4 = local_6c;\n      local_dc = puVar18;\n      do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);\n      puVar13 = (uint *)calloc((int)local_cc + 1,4);\n      if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }\n    }" ({ "{") (expression_statement "local_c4 = (uint *)0x0;" (assignment_expression "local_c4 = (uint *)0x0" (identifier "local_c4") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_cc = (void *)0x0;" (assignment_expression "local_cc = (void *)0x0" (identifier "local_cc") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_f4 = local_6c;" (assignment_expression "local_f4 = local_6c" (identifier "local_f4") (= "=") (identifier "local_6c")) (; ";")) (expression_statement "local_dc = puVar18;" (assignment_expression "local_dc = puVar18" (identifier "local_dc") (= "=") (identifier "puVar18")) (; ";")) (do_statement "do {\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      } while (local_6c + local_54 * 2 != local_f4);" (do "do") (compound_statement "{\n        uVar21 = *local_f4;\n        if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }\n        local_f4 = local_f4 + 2;\n        local_dc = local_dc + 1;\n      }" ({ "{") (expression_statement "uVar21 = *local_f4;" (assignment_expression "uVar21 = *local_f4" (identifier "uVar21") (= "=") (pointer_expression "*local_f4" (* "*") (identifier "local_f4"))) (; ";")) (if_statement "if (local_f4[1] != 0 || uVar21 != 0) {\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }" (if "if") (parenthesized_expression "(local_f4[1] != 0 || uVar21 != 0)" (( "(") (binary_expression "local_f4[1] != 0 || uVar21 != 0" (binary_expression "local_f4[1] != 0" (subscript_expression "local_f4[1]" (identifier "local_f4") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "0")) (|| "||") (binary_expression "uVar21 != 0" (identifier "uVar21") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n          uVar23 = uVar21 - local_8c;\n          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);\n          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }\n          local_58 = (int)(uVar8 >> 0x20);\n          local_5c = (uint)uVar8;\n          *local_dc = uVar21;\n          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }\n          local_c4 = (uint *)((int)local_c4 + uVar21);\n        }" ({ "{") (expression_statement "uVar23 = uVar21 - local_8c;" (assignment_expression "uVar23 = uVar21 - local_8c" (identifier "uVar23") (= "=") (binary_expression "uVar21 - local_8c" (identifier "uVar21") (- "-") (identifier "local_8c"))) (; ";")) (expression_statement "uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);" (assignment_expression "uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c)" (identifier "uVar21") (= "=") (binary_expression "(local_f4[1] - local_88) - (uint)(uVar21 < local_8c)" (parenthesized_expression "(local_f4[1] - local_88)" (( "(") (binary_expression "local_f4[1] - local_88" (subscript_expression "local_f4[1]" (identifier "local_f4") ([ "[") (number_literal "1") (] "]")) (- "-") (identifier "local_88")) () ")")) (- "-") (call_expression "(uint)(uVar21 < local_8c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar21 < local_8c)" (( "(") (binary_expression "uVar21 < local_8c" (identifier "uVar21") (< "<") (identifier "local_8c")) () ")"))))) (; ";")) (if_statement "if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }\n          else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }" (if "if") (parenthesized_expression "(uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74))" (( "(") (binary_expression "uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)" (binary_expression "uVar21 < local_70" (identifier "uVar21") (< "<") (identifier "local_70")) (|| "||") (binary_expression "uVar21 - local_70 < (uint)(uVar23 < local_74)" (binary_expression "uVar21 - local_70" (identifier "uVar21") (- "-") (identifier "local_70")) (< "<") (call_expression "(uint)(uVar23 < local_74)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar23 < local_74)" (( "(") (binary_expression "uVar23 < local_74" (identifier "uVar23") (< "<") (identifier "local_74")) () ")"))))) () ")")) (compound_statement "{\n            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;\n            if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }\n          }" ({ "{") (expression_statement "uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;" (assignment_expression "uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1" (identifier "uVar12") (= "=") (binary_expression "*(uint *)((int)local_90 + uVar23 * 8) & 1" (pointer_expression "*(uint *)((int)local_90 + uVar23 * 8)" (* "*") (cast_expression "(uint *)((int)local_90 + uVar23 * 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_90 + uVar23 * 8)" (( "(") (binary_expression "(int)local_90 + uVar23 * 8" (cast_expression "(int)local_90" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_90")) (+ "+") (binary_expression "uVar23 * 8" (identifier "uVar23") (* "*") (number_literal "8"))) () ")")))) (& "&") (number_literal "1"))) (; ";")) (if_statement "if (uVar12 == 0) {\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }\n            else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }" (if "if") (parenthesized_expression "(uVar12 == 0)" (( "(") (binary_expression "uVar12 == 0" (identifier "uVar12") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;\n              iVar9 = 0;\n              uVar12 = 1;\n              do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);\n            }" ({ "{") (expression_statement "uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;" (assignment_expression "uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1" (identifier "uVar7") (= "=") (binary_expression "(lVar27 - *(longlong *)local_f4) + lVar26 + 1" (binary_expression "(lVar27 - *(longlong *)local_f4) + lVar26" (parenthesized_expression "(lVar27 - *(longlong *)local_f4)" (( "(") (binary_expression "lVar27 - *(longlong *)local_f4" (identifier "lVar27") (- "-") (pointer_expression "*(longlong *)local_f4" (* "*") (cast_expression "(longlong *)local_f4" (( "(") (type_descriptor "longlong *" (type_identifier "longlong") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_f4")))) () ")")) (+ "+") (identifier "lVar26")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" (identifier "iVar9") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar12 = 1;" (assignment_expression "uVar12 = 1" (identifier "uVar12") (= "=") (number_literal "1")) (; ";")) (do_statement "do {\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);" (do "do") (compound_statement "{\n                bVar25 = 0xfffffffe < uVar12;\n                uVar12 = uVar12 + 1;\n                iVar9 = iVar9 + (uint)bVar25;\n                uVar21 = (uint)uVar7;\n                uVar8 = uVar7;\n                if (uVar7 == CONCAT44(iVar9,uVar12)) break;\n                uVar21 = uVar12;\n                uVar8 = CONCAT44(iVar9,uVar12);\n              }" ({ "{") (expression_statement "bVar25 = 0xfffffffe < uVar12;" (assignment_expression "bVar25 = 0xfffffffe < uVar12" (identifier "bVar25") (= "=") (binary_expression "0xfffffffe < uVar12" (number_literal "0xfffffffe") (< "<") (identifier "uVar12"))) (; ";")) (expression_statement "uVar12 = uVar12 + 1;" (assignment_expression "uVar12 = uVar12 + 1" (identifier "uVar12") (= "=") (binary_expression "uVar12 + 1" (identifier "uVar12") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar9 = iVar9 + (uint)bVar25;" (assignment_expression "iVar9 = iVar9 + (uint)bVar25" (identifier "iVar9") (= "=") (binary_expression "iVar9 + (uint)bVar25" (identifier "iVar9") (+ "+") (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")))) (; ";")) (expression_statement "uVar21 = (uint)uVar7;" (assignment_expression "uVar21 = (uint)uVar7" (identifier "uVar21") (= "=") (cast_expression "(uint)uVar7" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar7"))) (; ";")) (expression_statement "uVar8 = uVar7;" (assignment_expression "uVar8 = uVar7" (identifier "uVar8") (= "=") (identifier "uVar7")) (; ";")) (if_statement "if (uVar7 == CONCAT44(iVar9,uVar12)) break;" (if "if") (parenthesized_expression "(uVar7 == CONCAT44(iVar9,uVar12))" (( "(") (binary_expression "uVar7 == CONCAT44(iVar9,uVar12)" (identifier "uVar7") (== "==") (call_expression "CONCAT44(iVar9,uVar12)" (identifier "CONCAT44") (argument_list "(iVar9,uVar12)" (( "(") (identifier "iVar9") (, ",") (identifier "uVar12") () ")")))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "uVar21 = uVar12;" (assignment_expression "uVar21 = uVar12" (identifier "uVar21") (= "=") (identifier "uVar12")) (; ";")) (expression_statement "uVar8 = CONCAT44(iVar9,uVar12);" (assignment_expression "uVar8 = CONCAT44(iVar9,uVar12)" (identifier "uVar8") (= "=") (call_expression "CONCAT44(iVar9,uVar12)" (identifier "CONCAT44") (argument_list "(iVar9,uVar12)" (( "(") (identifier "iVar9") (, ",") (identifier "uVar12") () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0)" (( "(") (binary_expression "(*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0" (parenthesized_expression "(*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1)" (( "(") (binary_expression "*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1" (pointer_expression "*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10)" (* "*") (cast_expression "(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10)" (( "(") (binary_expression "(int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10" (binary_expression "(int)local_90 + (uVar23 + 1 + uVar12) * 8" (cast_expression "(int)local_90" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_90")) (+ "+") (binary_expression "(uVar23 + 1 + uVar12) * 8" (parenthesized_expression "(uVar23 + 1 + uVar12)" (( "(") (binary_expression "uVar23 + 1 + uVar12" (binary_expression "uVar23 + 1" (identifier "uVar23") (+ "+") (number_literal "1")) (+ "+") (identifier "uVar12")) () ")")) (* "*") (number_literal "8"))) (+ "+") (number_literal "-0x10")) () ")")))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (; ";")) (} "}")) (else_clause "else {\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }" (else "else") (compound_statement "{\n              uVar21 = 1;\n              uVar8 = (ulonglong)uVar12;\n            }" ({ "{") (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" (identifier "uVar21") (= "=") (number_literal "1")) (; ";")) (expression_statement "uVar8 = (ulonglong)uVar12;" (assignment_expression "uVar8 = (ulonglong)uVar12" (identifier "uVar8") (= "=") (cast_expression "(ulonglong)uVar12" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar12"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n            uVar21 = 1;\n            uVar8 = 1;\n          }" (else "else") (compound_statement "{\n            uVar21 = 1;\n            uVar8 = 1;\n          }" ({ "{") (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" (identifier "uVar21") (= "=") (number_literal "1")) (; ";")) (expression_statement "uVar8 = 1;" (assignment_expression "uVar8 = 1" (identifier "uVar8") (= "=") (number_literal "1")) (; ";")) (} "}")))) (expression_statement "local_58 = (int)(uVar8 >> 0x20);" (assignment_expression "local_58 = (int)(uVar8 >> 0x20)" (identifier "local_58") (= "=") (cast_expression "(int)(uVar8 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(uVar8 >> 0x20)" (( "(") (binary_expression "uVar8 >> 0x20" (identifier "uVar8") (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "local_5c = (uint)uVar8;" (assignment_expression "local_5c = (uint)uVar8" (identifier "local_5c") (= "=") (cast_expression "(uint)uVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar8"))) (; ";")) (expression_statement "*local_dc = uVar21;" (assignment_expression "*local_dc = uVar21" (pointer_expression "*local_dc" (* "*") (identifier "local_dc")) (= "=") (identifier "uVar21")) (; ";")) (if_statement "if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {\n            local_cc = (void *)uVar21;\n          }" (if "if") (parenthesized_expression "(local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c))" (( "(") (binary_expression "local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)" (binary_expression "local_58 != 0" (identifier "local_58") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "(uint)-local_58 < (uint)(local_cc < local_5c)" (binary_expression "(uint)-local_58" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (- "-") (identifier "local_58")) (< "<") (call_expression "(uint)(local_cc < local_5c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_cc < local_5c)" (( "(") (binary_expression "local_cc < local_5c" (identifier "local_cc") (< "<") (identifier "local_5c")) () ")"))))) () ")")) (compound_statement "{\n            local_cc = (void *)uVar21;\n          }" ({ "{") (expression_statement "local_cc = (void *)uVar21;" (assignment_expression "local_cc = (void *)uVar21" (identifier "local_cc") (= "=") (cast_expression "(void *)uVar21" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "uVar21"))) (; ";")) (} "}"))) (expression_statement "local_c4 = (uint *)((int)local_c4 + uVar21);" (assignment_expression "local_c4 = (uint *)((int)local_c4 + uVar21)" (identifier "local_c4") (= "=") (cast_expression "(uint *)((int)local_c4 + uVar21)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_c4 + uVar21)" (( "(") (binary_expression "(int)local_c4 + uVar21" (cast_expression "(int)local_c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_c4")) (+ "+") (identifier "uVar21")) () ")")))) (; ";")) (} "}"))) (expression_statement "local_f4 = local_f4 + 2;" (assignment_expression "local_f4 = local_f4 + 2" (identifier "local_f4") (= "=") (binary_expression "local_f4 + 2" (identifier "local_f4") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "local_dc = local_dc + 1;" (assignment_expression "local_dc = local_dc + 1" (identifier "local_dc") (= "=") (binary_expression "local_dc + 1" (identifier "local_dc") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_6c + local_54 * 2 != local_f4)" (( "(") (binary_expression "local_6c + local_54 * 2 != local_f4" (binary_expression "local_6c + local_54 * 2" (identifier "local_6c") (+ "+") (binary_expression "local_54 * 2" (identifier "local_54") (* "*") (number_literal "2"))) (!= "!=") (identifier "local_f4")) () ")")) (; ";")) (expression_statement "puVar13 = (uint *)calloc((int)local_cc + 1,4);" (assignment_expression "puVar13 = (uint *)calloc((int)local_cc + 1,4)" (identifier "puVar13") (= "=") (cast_expression "(uint *)calloc((int)local_cc + 1,4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "calloc((int)local_cc + 1,4)" (identifier "calloc") (argument_list "((int)local_cc + 1,4)" (( "(") (binary_expression "(int)local_cc + 1" (cast_expression "(int)local_cc" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_cc")) (+ "+") (number_literal "1")) (, ",") (number_literal "4") () ")"))))) (; ";")) (if_statement "if (puVar13 != (uint *)0x0) {\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }" (if "if") (parenthesized_expression "(puVar13 != (uint *)0x0)" (( "(") (binary_expression "puVar13 != (uint *)0x0" (identifier "puVar13") (!= "!=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        puVar14 = puVar18;\n        do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);\n        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;\n        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );\n        if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }\nLAB_000331cb:\n        free(puVar13);\n        free(puVar18);\n        free(local_6c);\n        free(local_90);\n        return 1;\n      }" ({ "{") (expression_statement "puVar14 = puVar18;" (assignment_expression "puVar14 = puVar18" (identifier "puVar14") (= "=") (identifier "puVar18")) (; ";")) (do_statement "do {\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        } while (puVar18 + local_54 != puVar14);" (do "do") (compound_statement "{\n          uVar21 = *puVar14;\n          puVar14 = puVar14 + 1;\n          puVar13[uVar21] = puVar13[uVar21] + 1;\n        }" ({ "{") (expression_statement "uVar21 = *puVar14;" (assignment_expression "uVar21 = *puVar14" (identifier "uVar21") (= "=") (pointer_expression "*puVar14" (* "*") (identifier "puVar14"))) (; ";")) (expression_statement "puVar14 = puVar14 + 1;" (assignment_expression "puVar14 = puVar14 + 1" (identifier "puVar14") (= "=") (binary_expression "puVar14 + 1" (identifier "puVar14") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar13[uVar21] = puVar13[uVar21] + 1;" (assignment_expression "puVar13[uVar21] = puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" (identifier "puVar13") ([ "[") (identifier "uVar21") (] "]")) (= "=") (binary_expression "puVar13[uVar21] + 1" (subscript_expression "puVar13[uVar21]" (identifier "puVar13") ([ "[") (identifier "uVar21") (] "]")) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(puVar18 + local_54 != puVar14)" (( "(") (binary_expression "puVar18 + local_54 != puVar14" (binary_expression "puVar18 + local_54" (identifier "puVar18") (+ "+") (identifier "local_54")) (!= "!=") (identifier "puVar14")) () ")")) (; ";")) (expression_statement "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54;" (assignment_expression "dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54" (identifier "dVar3") (= "=") (binary_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                (double)(int)local_54" (parenthesized_expression "((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP))" (( "(") (binary_expression "(double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(double)*puVar13" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (* "*") (cast_expression "(double)*(float *)(&DAT_0005b7c2 + unaff_EBP)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" (* "*") (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" (( "(") (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" (& "&") (identifier "DAT_0005b7c2")) (+ "+") (identifier "unaff_EBP")) () ")")))))) () ")")) (/ "/") (cast_expression "(double)(int)local_54" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)local_54" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_54"))))) (; ";")) (expression_statement "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              );" (call_expression "printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" (identifier "printf") (argument_list "((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)\n              )" (( "(") (cast_expression "(char *)(unaff_EBP + 0x48f47)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_EBP + 0x48f47)" (( "(") (binary_expression "unaff_EBP + 0x48f47" (identifier "unaff_EBP") (+ "+") (number_literal "0x48f47")) () ")"))) (, ",") (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (, ",") (call_expression "SUB84(dVar3,0)" (identifier "SUB84") (argument_list "(dVar3,0)" (( "(") (identifier "dVar3") (, ",") (number_literal "0") () ")"))) (, ",") (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" (( "(") (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dVar3")) (>> ">>") (number_literal "0x20")) () ")"))) () ")"))) (; ";")) (if_statement "if (local_cc != (void *)0x0) {\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" (if "if") (parenthesized_expression "(local_cc != (void *)0x0)" (( "(") (binary_expression "local_cc != (void *)0x0" (identifier "local_cc") (!= "!=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          uVar23 = 0;\n          uVar21 = 1;\n          do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);\n        }" ({ "{") (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" (identifier "uVar23") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" (identifier "uVar21") (= "=") (number_literal "1")) (; ";")) (do_statement "do {\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          } while (bVar25);" (do "do") (compound_statement "{\n            uVar12 = puVar13[uVar21];\n            uVar23 = uVar23 + uVar12 * uVar21;\n            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);\n            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));\n            bVar25 = local_cc != (void *)uVar21;\n            uVar21 = uVar21 + 1;\n          }" ({ "{") (expression_statement "uVar12 = puVar13[uVar21];" (assignment_expression "uVar12 = puVar13[uVar21]" (identifier "uVar12") (= "=") (subscript_expression "puVar13[uVar21]" (identifier "puVar13") ([ "[") (identifier "uVar21") (] "]"))) (; ";")) (expression_statement "uVar23 = uVar23 + uVar12 * uVar21;" (assignment_expression "uVar23 = uVar23 + uVar12 * uVar21" (identifier "uVar23") (= "=") (binary_expression "uVar23 + uVar12 * uVar21" (identifier "uVar23") (+ "+") (binary_expression "uVar12 * uVar21" (identifier "uVar12") (* "*") (identifier "uVar21")))) (; ";")) (expression_statement "dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4);" (assignment_expression "dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4)" (identifier "dVar3") (= "=") (cast_expression "(double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (parenthesized_expression "(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4)" (( "(") (binary_expression "((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                            (float)local_c4" (parenthesized_expression "((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" (( "(") (binary_expression "(float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar23" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (identifier "uVar23")) (* "*") (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" (* "*") (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" (( "(") (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" (& "&") (identifier "DAT_0005b7c2")) (+ "+") (identifier "unaff_EBP")) () ")"))))) () ")")) (/ "/") (cast_expression "(float)local_c4" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (identifier "local_c4"))) () ")")))) (; ";")) (expression_statement "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));" (call_expression "printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" (identifier "printf") (argument_list "(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,\n                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20))" (( "(") (binary_expression "&UNK_00050f4a + unaff_EBP" (pointer_expression "&UNK_00050f4a" (& "&") (identifier "UNK_00050f4a")) (+ "+") (identifier "unaff_EBP")) (, ",") (identifier "uVar21") (, ",") (identifier "uVar12") (, ",") (cast_expression "(double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (parenthesized_expression "(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54)" (( "(") (binary_expression "((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /\n                           (float)(int)local_54" (parenthesized_expression "((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP))" (( "(") (binary_expression "(float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)" (cast_expression "(float)uVar12" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (identifier "uVar12")) (* "*") (pointer_expression "*(float *)(&DAT_0005b7c2 + unaff_EBP)" (* "*") (cast_expression "(float *)(&DAT_0005b7c2 + unaff_EBP)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_0005b7c2 + unaff_EBP)" (( "(") (binary_expression "&DAT_0005b7c2 + unaff_EBP" (pointer_expression "&DAT_0005b7c2" (& "&") (identifier "DAT_0005b7c2")) (+ "+") (identifier "unaff_EBP")) () ")"))))) () ")")) (/ "/") (cast_expression "(float)(int)local_54" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (cast_expression "(int)local_54" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_54")))) () ")"))) (, ",") (call_expression "SUB84(dVar3,0)" (identifier "SUB84") (argument_list "(dVar3,0)" (( "(") (identifier "dVar3") (, ",") (number_literal "0") () ")"))) (, ",") (cast_expression "(int)((ulonglong)dVar3 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)dVar3 >> 0x20)" (( "(") (binary_expression "(ulonglong)dVar3 >> 0x20" (cast_expression "(ulonglong)dVar3" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dVar3")) (>> ">>") (number_literal "0x20")) () ")"))) () ")"))) (; ";")) (expression_statement "bVar25 = local_cc != (void *)uVar21;" (assignment_expression "bVar25 = local_cc != (void *)uVar21" (identifier "bVar25") (= "=") (binary_expression "local_cc != (void *)uVar21" (identifier "local_cc") (!= "!=") (cast_expression "(void *)uVar21" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "uVar21")))) (; ";")) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" (identifier "uVar21") (= "=") (binary_expression "uVar21 + 1" (identifier "uVar21") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (} "}"))) (labeled_statement "LAB_000331cb:\n        free(puVar13);" (statement_identifier "LAB_000331cb") (: ":") (expression_statement "free(puVar13);" (call_expression "free(puVar13)" (identifier "free") (argument_list "(puVar13)" (( "(") (identifier "puVar13") () ")"))) (; ";"))) (expression_statement "free(puVar18);" (call_expression "free(puVar18)" (identifier "free") (argument_list "(puVar18)" (( "(") (identifier "puVar18") () ")"))) (; ";")) (expression_statement "free(local_6c);" (call_expression "free(local_6c)" (identifier "free") (argument_list "(local_6c)" (( "(") (identifier "local_6c") () ")"))) (; ";")) (expression_statement "free(local_90);" (call_expression "free(local_90)" (identifier "free") (argument_list "(local_90)" (( "(") (identifier "local_90") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (} "}")))) (expression_statement "free(puVar18);" (call_expression "free(puVar18)" (identifier "free") (argument_list "(puVar18)" (( "(") (identifier "puVar18") () ")"))) (; ";")) (} "}"))) (labeled_statement "LAB_00034166:\n  dcgettext();" (statement_identifier "LAB_00034166") (: ":") (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";"))) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bp replaced with injection: get_pc_thunk.bp */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

type_1 __regparm3 function_1(type_2 *filedata)

{
  type_2 *filedata_00;
  type_3 *var_62;
  double dVar2;
  double dVar3;
  type_4 var_68;
  type_5 *var_27;
  type_6 var_28;
  type_6 var_29;
  type_7 *pEVar8;
  type_8 var_45;
  type_9 *puVar10;
  type_10 var_71;
  int var_24;
  size_t var_77;
  int var_79;
  type_11 var_15;
  char *var_51;
  type_11 *var_57;
  type_11 *var_65;
  void *pvVar19;
  type_11 var_60;
  type_11 *var_56;
  char **filedata_01;
  char *pcVar22;
  size_t var_74;
  type_11 var_14;
  type_1 var_84;
  type_11 var_25;
  type_6 *var_39;
  type_11 var_59;
  type_6 *sec;
  bool var_83;
  type_12 var_75;
  type_12 var_81;
  type_12 var_13;
  type_5 *pFVar32;
  type_13 in_stack_fffffefc;
  type_13 uVar33;
  type_14 *sym_info;
  type_5 *in_stack_ffffff00;
  type_4 *vna_other_00;
  type_15 *in_stack_ffffff04;
  type_3 *var_85;
  type_2 *var_20;
  type_11 var_82;
  type_11 var_18;
  type_11 *var_17;
  type_2 *var_48;
  type_3 *var_61;
  type_3 *var_58;
  char *var_37;
  type_11 *var_63;
  type_11 var_53;
  type_3 *var_26;
  type_16 local_8c;
  type_15 *var_35;
  size_t var_64;
  type_3 *var_54;
  type_16 local_74;
  type_3 *var_80;
  type_11 var_86;
  int var_88;
  type_11 var_23;
  type_11 var_22;
  type_4 vna_other;
  type_17 nb [8];
  type_17 var_78 [8];
  type_17 local_24 [20];
  
  var_17 = (type_11 *)dynamic_info[4]._4_4_;
  if (var_1 == 0 && var_2 == 0) {
    if (var_3 == 0) {
      return 1;
    }
    var_18 = (type_11)dynamic_info[4];
    if (dynamic_info[4]._4_4_ != 0 || (type_11)dynamic_info[4] != 0) goto LAB_00033f90;
    var_13 = var_4(dynamic_info_DT_GNU_HASH._4_4_,(type_11)dynamic_info_DT_GNU_HASH);
    if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (type_11)dynamic_info_DT_GNU_HASH != 0) {
      var_61 = (type_3 *)0x0;
      var_54 = (type_3 *)0x0;
      var_13 = var_4(dynamic_info[4]._4_4_,(type_11)dynamic_info[4]);
      goto LAB_00032d84;
    }
    var_61 = (type_3 *)0x0;
    var_54 = (type_3 *)0x0;
    var_18 = (type_11)dynamic_info_DT_GNU_HASH;
    var_17 = (type_11 *)dynamic_info_DT_GNU_HASH._4_4_;
LAB_00033740:
    var_23 = (type_11)dynamic_info[4];
    var_22 = dynamic_info[4]._4_4_;
    if ((type_11)dynamic_info[4] == 0 && dynamic_info[4]._4_4_ == 0) {
      local_74 = var_4(dynamic_info[4]._4_4_,(type_11)dynamic_info[4]);
      local_8c = var_4(dynamic_info[4]._4_4_,(type_11)dynamic_info[4]);
      var_26 = (type_3 *)0x0;
      var_80 = (type_3 *)0x0;
      goto LAB_0003378f;
    }
LAB_000332bc:
    local_74 = 0;
    local_8c = 0;
    var_26 = (type_3 *)0x0;
    var_80 = (type_3 *)0x0;
    var_23 = 0;
    var_22 = 0;
LAB_000333c0:
    var_64 = (size_t)var_13;
    if (var_2 == 0) goto LAB_0003378f;
    if (var_5 != 0) {
      if ((var_6 == (char *)0x0) || (var_7 == (type_15 *)0x0)) {
        if (var_1 != 0) goto LAB_00033a30;
        goto LAB_000337b9;
      }
      if (dynamic_info[4]._4_4_ != 0 || (type_11)dynamic_info[4] != 0) {
        var_51 = (char *)var_8(0,"\nSymbol table for image:\n",5);
        var_9(var_51);
        if (var_10 == 0) {
          var_51 = (char *)var_8(0,
                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"
                                      ,5);
          var_9(var_51);
        }
        else {
          var_51 = (char *)var_8(0,
                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",
                                      5);
          var_9(var_51);
        }
        pvVar19 = var_11(var_18,1);
        var_51 = (char *)0x0;
        var_12(pvVar19,0,var_18);
        if (var_13 != 0) {
          var_20 = (type_2 *)0x0;
          do {
            var_15 = (type_11)var_54[(int)var_20];
            var_14 = *(type_11 *)((int)var_54 + (int)var_20 * 8 + 4);
            if (var_14 != 0 || var_15 != 0) {
              do {
                var_16(filedata,var_4(var_51,var_20),var_15);
                if ((var_17 <= var_14 && (type_11)(var_15 < var_18) <= var_14 - (int)var_17) ||
                   (*(char *)((int)pvVar19 + var_15) != '\0')) {
                  var_51 = "histogram chain is corrupt\n";
                  pcVar22 = (char *)var_8(0,"histogram chain is corrupt\n",5);
                  var_19(pcVar22);
                  break;
                }
                *(char *)((int)pvVar19 + var_15) = '\x01';
                var_14 = *(type_11 *)((int)var_61 + var_15 * 8 + 4);
                var_15 = (type_11)var_61[var_15];
              } while (var_14 != 0 || var_15 != 0);
            }
            var_20 = (type_2 *)((int)var_20 + 1);
          } while ((type_2 *)var_64 != var_20);
        }
        var_21(pvVar19);
      }
      if (dynamic_info_DT_GNU_HASH._4_4_ != 0 || (type_11)dynamic_info_DT_GNU_HASH != 0) {
        var_51 = (char *)var_8(0,"\nSymbol table of `.gnu.hash\' for image:\n",5);
        var_9(var_51);
        if (var_10 == 0) {
          var_51 = "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n";
          pcVar22 = (char *)var_8(0,
                                      "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"
                                      ,5);
          var_9(pcVar22);
        }
        else {
          var_51 = "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n";
          pcVar22 = (char *)var_8(0,
                                      "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n",
                                      5);
          var_9(pcVar22);
        }
        if (var_22 != 0 || var_23 != 0) {
          var_15 = 0;
          do {
            var_24 = *(int *)((int)var_80 + var_15 * 8 + 4);
            var_14 = (type_11)var_80[var_15];
            if (var_24 != 0 || var_14 != 0) {
              var_25 = (var_24 - local_8c._4_4_) - (type_11)(var_14 < (type_11)local_8c);
              var_14 = var_14 - (type_11)local_8c;
              do {
                var_16(filedata,var_4(var_51,var_15),(type_11)local_8c + var_14);
                if (local_74._4_4_ <= var_25 &&
                    (type_11)(var_14 < (type_11)local_74) <= var_25 - local_74._4_4_) break;
                var_25 = var_25 + (0xfffffffe < var_14);
                var_62 = var_26 + var_14;
                var_14 = var_14 + 1;
              } while ((*var_62 & 1) == 0);
            }
            var_15 = var_15 + 1;
          } while (var_23 != var_15);
        }
      }
      goto LAB_00033418;
    }
    if (var_1 == 0) goto LAB_000341b6;
LAB_00033a30:
    var_20 = (type_2 *)filedata->section_headers;
    if (var_20 != (type_2 *)0x0) {
LAB_00033a43:
      puVar10 = PTR_stdout_000b3fd8;
      if ((filedata->file_header).e_shnum != 0) {
        filedata_01 = &filedata->string_table;
        var_53 = 0;
        do {
          var_27 = var_20->handle;
          if (((var_27 == (type_5 *)0x2) || (var_27 == (type_5 *)0xb)) &&
             ((var_2 != 0 || (var_27 != (type_5 *)0x2)))) {
            var_28 = (var_20->file_header).e_flags;
            var_29 = (var_20->file_header).e_version;
            sec = &filedata->string_table_length;
            if (var_28 == 0 && var_29 == 0) {
              var_51 = var_30
                                  ((type_2 *)filedata_01,(type_7 *)sec,var_20);
              pcVar22 = (char *)var_8(0,"\nSymbol table \'%s\' has a sh_entsize of zero!\n",5);
              var_9(pcVar22,var_51);
            }
            else {
              uVar33 = var_31((int)(var_20->file_header).e_entry,
                                 *(type_13 *)((int)&(var_20->file_header).e_entry + 4),var_29,
                                 var_28);
              nb._0_4_ = uVar33;
              var_51 = var_30
                                  ((type_2 *)filedata_01,(type_7 *)sec,var_20);
              pcVar22 = (char *)var_32(0,"\nSymbol table \'%s\' contains %lu entry:\n",
                                           "\nSymbol table \'%s\' contains %lu entries:\n",nb._0_4_,
                                           5);
              var_9(pcVar22,var_51,uVar33);
              if (var_10 == 0) {
                sym_info = (type_14 *)0x5;
                var_51 = (char *)var_8(0,
                                            "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"
                                           );
                var_9(var_51);
              }
              else {
                sym_info = (type_14 *)0x5;
                var_51 = (char *)var_8(0,
                                            "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"
                                           );
                var_9(var_51);
              }
              if (var_10 == 0) {
                var_35 = var_33(filedata,(type_7 *)var_20,(type_6 *)nb)
                ;
              }
              else {
                var_35 = var_34(filedata,(type_7 *)var_20,(type_6 *)nb)
                ;
              }
              if (var_35 != (type_15 *)0x0) {
                var_15 = (type_11)(var_20->file_header).e_phoff;
                if (var_15 == (filedata->file_header).e_shstrndx) {
                  var_37 = filedata->string_table;
                  var_48 = (type_2 *)filedata->string_table_length;
                }
                else {
                  var_48 = (type_2 *)0x0;
                  var_37 = (char *)0x0;
                  if (var_15 < (filedata->file_header).e_shnum) {
                    pEVar8 = filedata->section_headers;
                    sym_info = (type_14 *)0x5;
                    var_51 = (char *)var_8(0,"string table");
                    var_37 = (char *)var_36((void *)0x0,filedata,(type_6)pEVar8[var_15].sh_offset
                                                ,1,pEVar8[var_15].sh_size,var_51);
                    if (var_37 != (char *)0x0) {
                      var_48 = *(type_2 **)&pEVar8[var_15].sh_size;
                    }
                  }
                }
                if (nb._0_4_ != 0) {
                  filedata_00 = (type_2 *)((filedata->file_header).e_ident + 7);
                  var_15 = 0;
                  var_39 = &var_35->st_name;
                  do {
                    var_51 = "%6d: ";
                    var_14 = var_15;
                    var_9("%6d: ");
                    var_38(var_4(var_14,var_51),
                              (print_mode)((type_15 *)(var_39 + -4))->st_value);
                    pFVar32 = *(type_5 **)puVar10;
                    uVar33 = 0x20;
                    var_40(0x20,pFVar32);
                    var_38(var_4(pFVar32,uVar33),(print_mode)*(type_3 *)(var_39 + -2));
                    var_51 = var_41(filedata_00,(type_11)&(filedata->file_header).e_machine,
                                              (type_2 *)(*(type_8 *)(var_39 + 1) & 0xf));
                    var_9(" %-7s",var_51);
                    var_51 = var_42(filedata_00,(type_11)(*(type_8 *)(var_39 + 1) >> 4));
                    var_9(" %-6s",var_51);
                    if ((filedata->file_header).e_ident[7] == '\x06') {
                      var_51 = var_43((type_11)*(type_17 *)((int)var_39 + 5));
                      var_9(" %-7s",var_51);
                    }
                    else {
                      var_45 = *(type_17 *)((int)var_39 + 5) & 3;
                      var_51 = var_44((type_11)(*(type_17 *)((int)var_39 + 5) & 3));
                      var_9(" %-7s",var_51);
                      if (*(type_17 *)((int)var_39 + 5) != var_45) {
                        var_51 = var_46(filedata,(type_11)(*(type_17 *)((int)var_39 + 5) ^
                                                                  var_45));
                        var_9(" [%s] ",var_51);
                      }
                    }
                    var_51 = var_47(filedata,var_39[2]);
                    var_9(" %4s ",var_51);
                    if ((type_2 *)*var_39 < var_48) {
                      var_51 = var_37 + (int)(&((type_2 *)*var_39)->file_header + -1) + 0x3c;
                    }
                    else {
                      sym_info = (type_14 *)0x5;
                      var_51 = (char *)var_8(0,"<corrupt>");
                    }
                    vna_other_00 = (type_4 *)0x33cb9;
                    var_49(0x19,var_51);
                    var_51 = var_50
                                        (var_48,var_15,(char *)var_39,(type_6)(var_39 + 2),(type_11)var_78
                                         ,(type_15 *)&vna_other,sym_info,vna_other_00,
                                         in_stack_ffffff04);
                    if (var_51 != (char *)0x0) {
                      if (var_78._0_4_ == 0) {
                        sym_info = (type_14 *)(type_11)vna_other;
                        var_9("@%s (%d)",var_51);
                      }
                      else {
                        pcVar22 = "@%s";
                        if (var_78._0_4_ != 1) {
                          pcVar22 = "@@%s";
                        }
                        var_9(pcVar22,var_51);
                      }
                    }
                    var_40(10,*(type_5 **)puVar10);
                    if ((((*(type_8 *)(var_39 + 1) >> 4 == 0) &&
                         (var_14 = *(type_11 *)((int)&(var_20->file_header).e_phoff + 4),
                         var_14 <= var_15)) && ((filedata->file_header).e_machine != 8)) &&
                       ((filedata->file_header).e_ident[7] != '\x06')) {
                      var_51 = var_30
                                          ((type_2 *)filedata_01,(type_7 *)sec,var_20
                                          );
                      sym_info = (type_14 *)0x5;
                      pcVar22 = (char *)var_8(0,
                                                  "local symbol %u found at index >= %s\'s sh_info value of %u\n"
                                                 );
                      var_52(pcVar22,var_15,var_51,var_14);
                    }
                    var_15 = var_15 + 1;
                    var_39 = var_39 + 7;
                  } while (var_15 < (type_11)nb._0_4_);
                }
                var_21(var_35);
                if (filedata->string_table != var_37) {
                  var_21(var_37);
                }
              }
            }
          }
          var_53 = var_53 + 1;
          var_20 = (type_2 *)&(var_20->file_header).e_phentsize;
        } while (var_53 < (filedata->file_header).e_shnum);
      }
      goto LAB_00033418;
    }
    if (var_2 == 0) goto LAB_00033418;
LAB_000337b9:
    var_51 = (char *)var_8(0,
                                "\nDynamic symbol information is not available for displaying symbols.\n"
                                ,5);
    var_9(var_51);
    if (var_3 == 0) goto LAB_000337f0;
LAB_00033426:
    var_64 = (size_t)var_13;
    var_84 = var_3;
    if (var_54 != (type_3 *)0x0) {
      var_51 = (char *)var_32(0,"\nHistogram for bucket list length (total of %lu bucket):\n",
                                   "\nHistogram for bucket list length (total of %lu buckets):\n",
                                   var_64,5);
      var_9(var_51,var_64);
      var_56 = (type_11 *)var_55(var_64,4);
      if (var_56 == (type_11 *)0x0) {
        var_51 = "Out of memory allocating space for histogram buckets\n";
        goto LAB_00034166;
      }
      pvVar19 = var_11(var_18,1);
      var_12(pvVar19,0,var_18);
      var_51 = (char *)var_8(0," Length  Number     %% of total  Coverage\n",5);
      var_9(var_51);
      if (var_13 == 0) {
        var_21(pvVar19);
        var_57 = (type_11 *)var_55(1,4);
        if (var_57 == (type_11 *)0x0) goto LAB_00034764;
      }
      else {
        var_58 = var_54;
        var_15 = 0;
        var_14 = 0;
        var_63 = var_56;
        do {
          var_25 = *(type_11 *)((int)var_58 + 4);
          if (var_25 == 0 && (type_11)*var_58 == 0) {
            var_85 = (type_3 *)(var_15 + 1);
          }
          else {
            var_59 = *var_63;
            var_24 = var_14 - var_59;
            var_60 = (type_11)*var_58;
            do {
              var_59 = var_59 + 1;
              var_14 = var_24 + var_59;
              var_85 = (type_3 *)(var_15 + 1);
              if (var_15 < var_59) {
                var_85 = (type_3 *)(var_15 + 2);
                var_15 = var_15 + 1;
              }
              if ((var_17 <= var_25 && (type_11)(var_60 < var_18) <= var_25 - (int)var_17) ||
                 (*(char *)((int)pvVar19 + var_60) != '\0')) {
                *var_63 = var_59;
                var_51 = (char *)var_8(0,"histogram chain is corrupt\n",5);
                var_19(var_51);
                goto LAB_000335a5;
              }
              *(char *)((int)pvVar19 + var_60) = '\x01';
              var_62 = var_61 + var_60;
              var_25 = *(type_11 *)((int)var_61 + var_60 * 8 + 4);
              var_60 = (type_11)*var_62;
            } while (var_25 != 0 || (type_11)*var_62 != 0);
            *var_63 = var_59;
          }
LAB_000335a5:
          var_58 = var_58 + 1;
          var_63 = var_63 + 1;
        } while (var_54 + var_64 != var_58);
        var_21(pvVar19);
        var_57 = (type_11 *)var_55((size_t)var_85,4);
        if (var_57 == (type_11 *)0x0) {
LAB_00034764:
          var_21(var_56);
          var_51 = "Out of memory allocating space for histogram counts\n";
          goto LAB_00034166;
        }
        var_65 = var_56;
        do {
          var_25 = *var_65;
          var_65 = var_65 + 1;
          var_57[var_25] = var_57[var_25] + 1;
        } while (var_56 + var_64 != var_65);
        dVar2 = ((double)*var_57 * (double)var_67) / (double)(int)var_64;
        var_9("      0  %-10lu (%5.1f%%)\n",*var_57,var_66(dVar2,0),(int)((type_18)dVar2 >> 0x20)
              );
        if (var_15 != 0) {
          var_59 = 0;
          var_25 = 1;
          do {
            var_60 = var_57[var_25];
            var_59 = var_59 + var_60 * var_25;
            dVar2 = (double)(((float)var_59 * var_67) / (float)var_14);
            dVar3 = (double)(((float)var_60 * var_67) / (float)(int)var_64);
            var_9("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",var_25,var_60,var_66(dVar3,0),
                   (int)((type_18)dVar3 >> 0x20),var_66(dVar2,0),(int)((type_18)dVar2 >> 0x20));
            var_83 = var_15 != var_25;
            var_25 = var_25 + 1;
          } while (var_83);
        }
      }
      var_21(var_57);
      var_21(var_56);
      goto LAB_000337ff;
    }
  }
  else {
    var_18 = (type_11)dynamic_info[4];
    var_13 = var_4(dynamic_info[4]._4_4_,(type_11)dynamic_info[4]);
    if (dynamic_info[4]._4_4_ != 0 || (type_11)dynamic_info[4] != 0) {
      if (var_3 != 0) {
LAB_00033f90:
        var_68 = (filedata->file_header).e_machine;
        if ((var_68 == 0x9026 || var_68 == 0x16) || (var_77 = 4, var_68 == 0xa390)) {
          var_77 = (type_11)((filedata->file_header).e_ident[4] == '\x02') * 4 + 4;
        }
        var_71 = var_69(filedata,0x10,var_4(in_stack_ffffff00,in_stack_fffffefc));
        var_24 = var_70((type_5 *)filedata->handle,var_71 + var_72,0);
        if (var_24 == 0) {
          in_stack_ffffff00 = (type_5 *)filedata->handle;
          var_74 = var_73(nb,var_77,1,in_stack_ffffff00);
          if (var_74 != 1) {
            var_51 = "Failed to read in number of buckets\n";
            goto LAB_00034039;
          }
          in_stack_ffffff00 = (type_5 *)filedata->handle;
          in_stack_fffffefc = 1;
          var_74 = var_73(var_78,var_77,1,in_stack_ffffff00);
          if (var_74 != 1) {
            var_51 = "Failed to read in number of chains\n";
            goto LAB_00034039;
          }
          var_13 = (*byte_get)(nb,var_77);
          var_74 = var_77;
          var_75 = (*byte_get)(var_78,var_77);
          var_18 = (type_11)var_75;
          var_17 = (type_11 *)(var_75 >> 0x20);
          var_54 = var_76(filedata,var_4(var_74,var_77),(type_11)var_13);
          var_61 = var_76(filedata,var_4(var_74,var_77),var_18);
          if ((var_54 != (type_3 *)0x0) && (var_61 != (type_3 *)0x0)) goto LAB_0003325f;
        }
        else {
          var_51 = "Unable to seek to start of dynamic information\n";
LAB_00034039:
          in_stack_fffffefc = 5;
          var_51 = (char *)var_8(0,var_51);
          var_19(var_51);
          var_61 = (type_3 *)0x0;
          var_54 = (type_3 *)0x0;
        }
        if (var_5 != 0) {
          return 0;
        }
        var_21(var_54);
        var_21(var_61);
        var_61 = (type_3 *)0x0;
        var_54 = (type_3 *)0x0;
        var_18 = 0;
        var_17 = (type_11 *)0x0;
        var_13 = 0;
        goto LAB_0003325f;
      }
      if (var_5 != 0) {
        if ((var_1 == 0) && (var_6 != (char *)0x0)) goto LAB_00033f90;
        if ((type_11)dynamic_info_DT_GNU_HASH == 0 && dynamic_info_DT_GNU_HASH._4_4_ == 0)
        goto LAB_00033382;
        var_54 = (type_3 *)0x0;
        var_18 = 0;
        var_17 = (type_11 *)0x0;
        var_61 = (type_3 *)0x0;
        var_13 = 0;
LAB_00033293:
        if ((var_1 != 0) || (var_6 == (char *)0x0)) goto LAB_000332bc;
        goto LAB_00032d84;
      }
      if ((type_11)dynamic_info_DT_GNU_HASH != 0 || dynamic_info_DT_GNU_HASH._4_4_ != 0) {
        var_54 = (type_3 *)0x0;
        var_18 = 0;
        var_17 = (type_11 *)0x0;
        var_61 = (type_3 *)0x0;
        var_13 = 0;
        goto LAB_000332bc;
      }
LAB_00033382:
      local_74 = var_4(dynamic_info_DT_GNU_HASH._4_4_,(type_11)dynamic_info_DT_GNU_HASH);
      local_8c = var_4(dynamic_info_DT_GNU_HASH._4_4_,(type_11)dynamic_info_DT_GNU_HASH);
      var_18 = (type_11)dynamic_info_DT_GNU_HASH;
      var_17 = (type_11 *)dynamic_info_DT_GNU_HASH._4_4_;
      var_13 = var_4(dynamic_info_DT_GNU_HASH._4_4_,(type_11)dynamic_info_DT_GNU_HASH);
      var_26 = (type_3 *)0x0;
      var_80 = (type_3 *)0x0;
      var_61 = (type_3 *)0x0;
      var_54 = (type_3 *)0x0;
      var_23 = var_18;
      var_22 = (type_11)var_17;
      goto LAB_000333c0;
    }
    var_61 = (type_3 *)0x0;
    var_54 = (type_3 *)0x0;
LAB_0003325f:
    if (dynamic_info_DT_GNU_HASH._4_4_ == 0 && (type_11)dynamic_info_DT_GNU_HASH == 0)
    goto LAB_00033740;
    if (var_3 == 0) {
      if (var_5 != 0) goto LAB_00033293;
      goto LAB_000332bc;
    }
LAB_00032d84:
    var_71 = var_69(filedata,0x10,var_4(in_stack_ffffff00,in_stack_fffffefc));
    var_24 = var_70((type_5 *)filedata->handle,var_71 + var_72,0);
    if (var_24 == 0) {
      pFVar32 = (type_5 *)filedata->handle;
      uVar33 = 1;
      var_77 = var_73(var_78,0x10,1,pFVar32);
      if (var_77 != 1) {
        var_51 = "Failed to read in number of buckets\n";
        goto LAB_00034303;
      }
      var_75 = (*byte_get)(var_78,4);
      var_81 = (*byte_get)(var_78 + 4,4);
      (*byte_get)(local_24,4);
      var_71 = var_69(filedata,4,var_4(pFVar32,uVar33));
      var_24 = var_71 + var_72;
      uVar33 = 0;
      var_79 = var_70((type_5 *)filedata->handle,var_24,0);
      local_8c = var_81;
      if (var_79 != 0) {
        var_51 = (char *)var_8(0,"Unable to seek to start of dynamic information\n",5);
        var_19(var_51);
        local_74 = 0;
        var_80 = (type_3 *)0x0;
        var_75 = local_74;
        goto LAB_00034347;
      }
      local_74._0_4_ = (type_11)var_75;
      local_74._4_4_ = (type_11)(var_75 >> 0x20);
      var_80 = var_76(filedata,var_4(var_24,4),(type_11)local_74);
      if (var_80 == (type_3 *)0x0) {
LAB_000346fb:
        local_74 = 0;
        var_75 = local_74;
        goto LAB_00034347;
      }
      if (local_74._4_4_ == 0 && (type_11)local_74 == 0) goto LAB_00034347;
      var_23 = 0;
      var_22 = 0;
      var_20 = (type_2 *)0xffffffff;
      var_82 = 0;
      do {
        var_15 = (type_11)var_80[var_23];
        var_14 = *(type_11 *)((int)(var_80 + var_23) + 4);
        local_8c._0_4_ = (type_11)var_81;
        local_8c._4_4_ = (type_11)(var_81 >> 0x20);
        if (var_14 != 0 || var_15 != 0) {
          if (var_14 < local_8c._4_4_ || var_14 - local_8c._4_4_ < (type_11)(var_15 < (type_11)local_8c))
          {
            return 0;
          }
          if ((var_82 < var_14 || var_82 - var_14 < (type_11)(var_20 < var_15)) ||
             (var_20 == (type_2 *)0xffffffff && var_82 == 0)) {
            var_20 = (type_2 *)var_15;
            var_82 = var_14;
          }
        }
        var_83 = 0xfffffffe < var_23;
        var_23 = var_23 + 1;
        var_22 = var_22 + var_83;
      } while (local_74._4_4_ != var_22 || (type_11)local_74 != var_23);
      if (var_82 == 0 && var_20 == (type_2 *)0xffffffff) goto LAB_000346fb;
      var_15 = (int)var_20 - (type_11)local_8c;
      var_14 = (var_82 - local_8c._4_4_) - (type_11)(var_20 < (type_11)local_8c);
      var_71 = var_69(filedata,4,var_4(pFVar32,uVar33));
      var_24 = var_70((type_5 *)filedata->handle,var_71 + var_72,0);
      if (var_24 != 0) {
LAB_000347ff:
        var_51 = "Unable to seek to start of dynamic information\n";
LAB_00033073:
        var_51 = (char *)var_8(0,var_51,5);
        var_19(var_51);
        local_74 = 0;
        var_75 = local_74;
        goto LAB_00034347;
      }
      do {
        pFVar32 = (type_5 *)filedata->handle;
        uVar33 = 1;
        var_77 = var_73(var_78,4,1,pFVar32);
        if (var_77 != 1) {
          var_51 = "Failed to determine last chain length\n";
          goto LAB_00033073;
        }
        if ((var_14 & var_15) == 0xffffffff) goto LAB_000346fb;
        var_83 = 0xfffffffe < var_15;
        var_15 = var_15 + 1;
        var_14 = var_14 + var_83;
        var_75 = (*byte_get)(var_78,4);
      } while ((var_75 & 1) == 0);
      local_74 = var_4(var_14,var_15);
      var_71 = var_69(filedata,4,var_4(pFVar32,uVar33));
      var_24 = var_71 + var_72;
      var_79 = var_70((type_5 *)filedata->handle,var_24,0);
      if (var_79 != 0) goto LAB_000347ff;
      var_26 = var_76(filedata,var_4(var_24,4),var_15);
      var_75 = local_74;
      if (var_26 == (type_3 *)0x0) goto LAB_00034347;
    }
    else {
      var_51 = "Unable to seek to start of dynamic information\n";
LAB_00034303:
      var_51 = (char *)var_8(0,var_51,5);
      var_19(var_51);
      local_74 = 0;
      local_8c = 0;
      var_80 = (type_3 *)0x0;
      var_75 = local_74;
LAB_00034347:
      local_74 = var_75;
      var_21(var_80);
      if (var_5 != 0) {
        return 0;
      }
      var_26 = (type_3 *)0x0;
      var_80 = (type_3 *)0x0;
      var_23 = 0;
      var_22 = 0;
    }
    if ((dynamic_info_DT_GNU_HASH._4_4_ != 0 || dynamic_info[4]._4_4_ != 0) ||
        ((type_11)dynamic_info_DT_GNU_HASH != 0 || (type_11)dynamic_info[4] != 0)) goto LAB_000333c0;
LAB_0003378f:
    if (var_1 != 0) goto LAB_00033a30;
    if (var_2 != 0) {
      if (var_5 != 0) goto LAB_000337b9;
LAB_000341b6:
      var_20 = (type_2 *)filedata->section_headers;
      if (var_20 == (type_2 *)0x0) goto LAB_000337b9;
      goto LAB_00033a43;
    }
LAB_00033418:
    if (var_3 != 0) goto LAB_00033426;
LAB_000337f0:
    if (var_54 == (type_3 *)0x0) {
      return 1;
    }
LAB_000337ff:
    var_84 = var_3;
    var_21(var_54);
    var_21(var_61);
  }
  if (var_80 == (type_3 *)0x0) {
    return 1;
  }
  if (var_84 == 0) {
    return 1;
  }
  var_51 = (char *)var_32(0,
                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu bucket):\n"
                               ,
                               "\nHistogram for `.gnu.hash\' bucket list length (total of %lu buckets):\n"
                               ,var_23,5);
  var_9(var_51,var_23);
  var_56 = (type_11 *)var_55(var_23,4);
  if (var_56 == (type_11 *)0x0) {
    var_51 = "Out of memory allocating space for gnu histogram buckets\n";
  }
  else {
    var_51 = (char *)var_8(0," Length  Number     %% of total  Coverage\n",5);
    var_9(var_51);
    if (var_22 == 0 && var_23 == 0) {
      var_57 = (type_11 *)var_55(1,4);
      if (var_57 != (type_11 *)0x0) goto LAB_000331cb;
    }
    else {
      var_58 = (type_3 *)0x0;
      var_61 = (type_3 *)0x0;
      var_85 = var_80;
      var_17 = var_56;
      do {
        var_15 = *(type_11 *)((int)var_85 + 4);
        var_14 = (type_11)*var_85;
        if (var_15 != 0 || var_14 != 0) {
          var_25 = var_14 - (type_11)local_8c;
          var_59 = (var_15 - local_8c._4_4_) - (type_11)(var_14 < (type_11)local_8c);
          if (var_59 < local_74._4_4_ || var_59 - local_74._4_4_ < (type_11)(var_25 < (type_11)local_74))
          {
            var_88 = 0;
            var_86 = (type_11)var_26[var_25] & 1;
            if (var_86 == 0) {
              var_59 = ((type_11)local_8c - var_14) + (type_11)local_74 + 1;
              var_24 = ((local_8c._4_4_ - var_15) - (type_11)((type_11)local_8c < var_14)) +
                       local_74._4_4_ + (0xfffffffe < (type_11)local_74) +
                       (type_11)var_87((type_11)local_8c - var_14,(type_11)local_74 + 1);
              var_79 = 0;
              var_14 = 1;
              do {
                var_83 = 0xfffffffe < var_14;
                var_14 = var_14 + 1;
                var_79 = var_79 + (type_11)var_83;
                var_15 = var_59;
                var_86 = var_59;
                var_88 = var_24;
                if (var_79 == var_24 && var_14 == var_59) break;
                var_15 = var_14;
                var_86 = var_14;
                var_88 = var_79;
              } while ((var_26[var_25 + var_14 + -1] & 1) == 0);
            }
            else {
              var_15 = 1;
            }
          }
          else {
            var_86 = 1;
            var_88 = 0;
            var_15 = 1;
          }
          *var_17 = var_15;
          if (var_88 != 0 || (type_11)-var_88 < (type_11)(var_61 < var_86)) {
            var_61 = (type_3 *)var_15;
          }
          var_58 = (type_3 *)((int)var_58 + var_15);
        }
        var_85 = var_85 + 1;
        var_17 = var_17 + 1;
      } while (var_80 + var_23 != var_85);
      var_57 = (type_11 *)var_55((int)var_61 + 1,4);
      if (var_57 != (type_11 *)0x0) {
        var_65 = var_56;
        do {
          var_15 = *var_65;
          var_65 = var_65 + 1;
          var_57[var_15] = var_57[var_15] + 1;
        } while (var_56 + var_23 != var_65);
        dVar2 = ((double)*var_57 * (double)var_67) / (double)(int)var_23;
        var_9("      0  %-10lu (%5.1f%%)\n",*var_57,var_66(dVar2,0),(int)((type_18)dVar2 >> 0x20)
              );
        if (var_61 != (type_3 *)0x0) {
          var_14 = 0;
          var_15 = 1;
          do {
            var_25 = var_57[var_15];
            var_14 = var_14 + var_25 * var_15;
            dVar2 = (double)(((float)var_14 * var_67) / (float)var_58);
            dVar3 = (double)(((float)var_25 * var_67) / (float)(int)var_23);
            var_9("%7lu  %-10lu (%5.1f%%)    %5.1f%%\n",var_15,var_25,var_66(dVar3,0),
                   (int)((type_18)dVar3 >> 0x20),var_66(dVar2,0),(int)((type_18)dVar2 >> 0x20));
            var_83 = var_61 != (type_3 *)var_15;
            var_15 = var_15 + 1;
          } while (var_83);
        }
LAB_000331cb:
        var_21(var_57);
        var_21(var_56);
        var_21(var_80);
        var_21(var_26);
        return 1;
      }
    }
    var_21(var_56);
    var_51 = "Out of memory allocating space for gnu histogram counts\n";
  }
LAB_00034166:
  var_51 = (char *)var_8(0,var_51,5);
  var_19(var_51);
  return 0;
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type)))) body: (compound_statement (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: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) 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: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator 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: (primitive_type) declarator: (pointer_declarator 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: (type_identifier) 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: (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: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator 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: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator 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: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal)) right: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal)))) consequence: (compound_statement (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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) 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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) 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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal)))))) 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: (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: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (identifier))) (labeled_statement label: (statement_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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (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: (string_literal (string_content) (escape_sequence)) right: (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: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (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: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (number_literal))) (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 (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) 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: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (goto_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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) 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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))))) consequence: (compound_statement (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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (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: (binary_expression left: (string_literal (string_content)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (break_statement))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (char_literal (escape_sequence)))) (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (identifier) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) 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: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal)) right: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (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: (binary_expression left: (string_literal (string_content)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) (do_statement body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (binary_expression left: (identifier) right: (identifier))))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (number_literal) right: (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: (identifier))))) 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: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))) right: (number_literal))) 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: (identifier)))))))) (goto_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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (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: (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: (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 (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 declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (string_literal (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (do_statement body: (compound_statement (expression_statement (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: (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: (number_literal))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (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: (string_literal (string_content) (escape_sequence)) right: (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: (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))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) 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))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (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) (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)) (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)) (subscript_expression argument: (identifier) index: (number_literal)) (number_literal) (identifier) (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (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: (binary_expression left: (string_literal (string_content)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (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: (binary_expression left: (string_literal (string_content)) right: (identifier)) right: (number_literal))))) 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)))))) 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)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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))))))) (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: (primitive_type) 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: (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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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 (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (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: (binary_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: (call_expression function: (identifier) arguments: (argument_list)))) (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) (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))))) (identifier) (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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)))))))))))))) (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: (number_literal))) (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: (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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (do_statement body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (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: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (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)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (identifier))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier) (pointer_expression argument: (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (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: (parenthesized_expression (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal)))) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (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)))))) right: (binary_expression left: (identifier) right: (identifier)))))) 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: (identifier) right: (number_literal))))) right: (number_literal))))) 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: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (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: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier) (identifier) (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: (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (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))))))))))) (goto_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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) (expression_statement (assignment_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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (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: (string_literal (string_content) (escape_sequence)) right: (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) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)) (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)) (identifier)))))) (expression_statement (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: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))))) (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: (goto_statement label: (statement_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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_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))))) (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 (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (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) (number_literal)))))) (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: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (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: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (pointer_expression argument: (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (do_statement body: (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: (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)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (parenthesized_expression (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 (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (char_literal (escape_sequence)))) (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (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)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (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: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (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 (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) (number_literal)))))) (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 (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (identifier)) right: (binary_expression left: (subscript_expression argument: (identifier) index: (identifier)) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (pointer_expression argument: (identifier)) (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))) (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (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))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)) (identifier) (identifier) (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))) (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (goto_statement label: (statement_identifier))))) 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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (expression_statement (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: (string_literal (string_content) (escape_sequence)) right: (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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) 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: (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: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (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: (char_literal (escape_sequence))))) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (binary_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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal)))))) (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 (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (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)))))))) right: (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 (identifier) (identifier) (number_literal) (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)))))))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (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: (pointer_expression argument: (identifier)) right: (identifier))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (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: (pointer_expression argument: (identifier)) right: (identifier))))))) arguments: (argument_list)))) (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: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))))) (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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (return_statement (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (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: (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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) 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: (string_literal (string_content) (escape_sequence)) right: (identifier)) 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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (if_statement condition: (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: (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) 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: (string_literal (string_content) (escape_sequence)) right: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (expression_statement (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (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: (number_literal)))) (expression_statement (assignment_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: (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)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal)) right: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal)))) consequence: (goto_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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal)))))))) (expression_statement (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: (string_literal (string_content) (escape_sequence)) right: (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))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (binary_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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal)))))) (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 (identifier) (number_literal) (number_literal) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (binary_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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal)))))) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (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)))) (goto_statement label: (statement_identifier)))) (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))))) (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 (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))) (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: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) consequence: (compound_statement (return_statement (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (number_literal) right: (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: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) (if_statement condition: (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: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (binary_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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal)))))) (number_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)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal) (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))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (number_literal) right: (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: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) arguments: (argument_list))))) condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (binary_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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal)))))) (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (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)))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) 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: (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: (number_literal))) (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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (expression_statement (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (parenthesized_expression (binary_expression left: (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: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal)) right: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (goto_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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (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: (binary_expression left: (string_literal (string_content) (escape_sequence)) right: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (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: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (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: (string_literal (string_content) (escape_sequence)) right: (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (return_statement (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (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 (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) (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)) (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)) (identifier)))))) (expression_statement (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: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))))) (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: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_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))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (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 (number_literal) (number_literal)))))) (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: (goto_statement label: (statement_identifier)))) 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: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (primitive_type)) value: (identifier)) right: (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 (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (number_literal) right: (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: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) 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: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) right: (number_literal))) right: (number_literal))))) right: (number_literal))) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))))) 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: (primitive_type)) value: (parenthesized_expression (binary_expression left: (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: (pointer_expression argument: (identifier)) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (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: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (identifier)))) (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 (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) (number_literal)))))) (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: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (identifier)) right: (binary_expression left: (subscript_expression argument: (identifier) index: (identifier)) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (pointer_expression argument: (identifier)) (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))) (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)) (identifier) (identifier) (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))) (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (return_statement (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)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (return_statement (number_literal)))))

undefined4 MASKED(void)

{
  undefined4 *puVar1;
  int iVar2;
  double dVar3;
  byte bVar4;
  short sVar5;
  uint uVar6;
  ulonglong uVar7;
  ulonglong uVar8;
  int iVar9;
  int iVar10;
  size_t sVar11;
  uint uVar12;
  uint *puVar13;
  uint *puVar14;
  void *pvVar15;
  uint uVar16;
  char *pcVar17;
  uint *puVar18;
  undefined4 uVar19;
  size_t sVar20;
  uint uVar21;
  uint uVar22;
  char *__format;
  int unaff_EBP;
  uint uVar23;
  uint uVar24;
  bool bVar25;
  longlong lVar26;
  longlong lVar27;
  longlong lVar28;
  longlong lVar29;
  undefined4 uVar30;
  undefined *puVar31;
  undefined4 uVar32;
  uint *local_f4;
  uint local_ec;
  uint uStack_e8;
  uint local_e0;
  uint *local_dc;
  uint local_d4;
  void *local_cc;
  uint *local_c4;
  void *local_bc;
  uint *local_b4;
  uint local_b0;
  void *local_90;
  uint local_8c;
  int local_88;
  void *local_80;
  size_t local_7c;
  uint *local_78;
  uint local_74;
  uint local_70;
  uint *local_6c;
  uint local_5c;
  int local_58;
  uint local_54;
  int local_50;
  ushort local_36;
  uint local_34 [2];
  int local_2c [7];
  
  iVar9 = FUN_0004ab89();
  if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0 &&
      *(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0) {
    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {
      return 1;
    }
    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
    if (*(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22) != 0 ||
        (int)*(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e) != 0)
    goto LAB_00033f90;
    lVar29 = *(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);
    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||
        (int)*(longlong *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {
      local_cc = (void *)0x0;
      local_78 = (uint *)0x0;
      lVar29 = lVar28;
      goto LAB_00032d84;
    }
    local_cc = (void *)0x0;
    local_78 = (uint *)0x0;
    lVar28 = lVar29;
LAB_00033740:
    puVar18 = (uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
    uVar21 = *puVar18;
    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);
    lVar26 = *(longlong *)puVar18;
    lVar27 = *(longlong *)puVar18;
    if (uVar21 == 0 && iVar10 == 0) {
      local_90 = (void *)0x0;
      local_6c = (uint *)0x0;
      local_54 = uVar21;
      local_50 = iVar10;
      goto LAB_0003378f;
    }
LAB_000332bc:
    lVar27 = 0;
    local_90 = (void *)0x0;
    local_6c = (uint *)0x0;
    local_54 = 0;
    local_50 = 0;
    lVar26 = 0;
LAB_000333c0:
    local_7c = (size_t)lVar28;
    uVar23 = (uint)((ulonglong)lVar29 >> 0x20);
    local_e0 = (uint)lVar29;
    local_70 = (uint)((ulonglong)lVar26 >> 0x20);
    local_74 = (uint)lVar26;
    local_88 = (int)((ulonglong)lVar27 >> 0x20);
    local_8c = (uint)lVar27;
    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)
    goto LAB_0003378f;
    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {
      if ((*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0) ||
         (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 2) == 0)) {
        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)
        goto LAB_00033a30;
        goto LAB_000337b9;
      }
      if (iVar10 != 0 || uVar21 != 0) {
        iVar9 = unaff_EBP + 0x48efc;
        uVar32 = 5;
        pcVar17 = (char *)dcgettext();
        printf(pcVar17,iVar9,uVar32);
        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {
          puVar31 = &UNK_00050c3e + unaff_EBP;
          uVar32 = 5;
          pcVar17 = (char *)dcgettext();
          printf(pcVar17,puVar31,uVar32);
        }
        else {
          puVar31 = &UNK_00050c02 + unaff_EBP;
          uVar32 = 5;
          pcVar17 = (char *)dcgettext();
          printf(pcVar17,puVar31,uVar32);
        }
        pvVar15 = (void *)FUN_0005da70();
        memset(pvVar15,0,local_e0);
        if (lVar28 != 0) {
          local_ec = 0;
          do {
            uVar21 = local_78[local_ec * 2];
            uVar12 = local_78[local_ec * 2 + 1];
            if (uVar12 != 0 || uVar21 != 0) {
              do {
                FUN_00032a90();
                if ((uVar23 <= uVar12 && (uint)(uVar21 < local_e0) <= uVar12 - uVar23) ||
                   (*(char *)((int)pvVar15 + uVar21) != '\0')) {
                  dcgettext();
                  error();
                  break;
                }
                *(char *)((int)pvVar15 + uVar21) = '\x01';
                uVar12 = *(uint *)((int)local_cc + uVar21 * 8 + 4);
                uVar21 = *(uint *)((int)local_cc + uVar21 * 8);
              } while (uVar12 != 0 || uVar21 != 0);
            }
            local_ec = local_ec + 1;
          } while (local_7c != local_ec);
        }
        free(pvVar15);
      }
      if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||
          *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0) {
        puVar31 = &UNK_00050c82 + unaff_EBP;
        uVar32 = 5;
        pcVar17 = (char *)dcgettext();
        printf(pcVar17,puVar31,uVar32);
        if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {
          puVar31 = &UNK_00050c3e + unaff_EBP;
          uVar32 = 5;
          pcVar17 = (char *)dcgettext();
          printf(pcVar17,puVar31,uVar32);
        }
        else {
          puVar31 = &UNK_00050c02 + unaff_EBP;
          uVar32 = 5;
          pcVar17 = (char *)dcgettext();
          printf(pcVar17,puVar31,uVar32);
        }
        if (local_50 != 0 || local_54 != 0) {
          uVar21 = 0;
          do {
            uVar23 = local_6c[uVar21 * 2];
            if (local_6c[uVar21 * 2 + 1] != 0 || uVar23 != 0) {
              uVar12 = uVar23 - local_8c;
              uVar23 = (local_6c[uVar21 * 2 + 1] - local_88) - (uint)(uVar23 < local_8c);
              do {
                FUN_00032a90();
                if (local_70 <= uVar23 && (uint)(uVar12 < local_74) <= uVar23 - local_70) break;
                bVar25 = 0xfffffffe < uVar12;
                uVar12 = uVar12 + 1;
                uVar23 = uVar23 + bVar25;
              } while ((*(byte *)((int)local_90 + uVar12 * 8 + -8) & 1) == 0);
            }
            uVar21 = uVar21 + 1;
          } while (local_54 != uVar21);
        }
      }
      goto LAB_00033418;
    }
    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)
    goto LAB_000341b6;
LAB_00033a30:
    local_ec = *(int *)(iVar9 + 0x5c);
    if (local_ec != 0) {
LAB_00033a43:
      if (*(int *)(iVar9 + 0x54) != 0) {
        local_b0 = 0;
        puVar1 = *(undefined4 **)
                  (
                  " Options are:\n  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n  -h --file-header       Display the ELF file header\n  -l --program-headers   Display the program headers\n     --segments          An alias for --program-headers\n  -S --section-headers   Display the sections\' header\n     --sections          An alias for --section-headers\n  -g --section-groups    Display the section groups\n  -t --section-details   Display the section details\n  -e --headers           Equivalent to: -h -l -S\n  -s --syms              Display the symbol table\n     --symbols           An alias for --syms\n  --dyn-syms             Display the dynamic symbol table\n  -n --notes             Display the core notes (if present)\n  -r --relocs            Display the relocations (if present)\n  -u --unwind            Display the unwind info (if present)\n  -d --dynamic           Display the dynamic section (if present)\n  -V --version-info      Display the version sections (if present)\n  -A --arch-specific     Display architecture specific information (if any)\n  -c --archive-index     Display the symbol/file index in an archive\n  -D --use-dynamic       Use the dynamic section info when displaying symbols\n  -x --hex-dump=<number|name>\n                         Dump the contents of section <number|name> as bytes\n  -p --string-dump=<number|name>\n                         Dump the contents of section <number|name> as strings\n  -R --relocated-dump=<number|name>\n                         Dump the contents of section <number|name> as relocated bytes\n  -z --decompress        Decompress section before dumping it\n  -w[lLiaprmfFsoRtUuTgAckK] or\n  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,\n               =frames-interp,=str,=loc,=Ranges,=pubtypes,\n               =gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n               =addr,=cu_index,=links,=follow-links]\n                         Display the contents of DWARF debug sections\n"
                  + unaff_EBP + 0x6b6);
        do {
          iVar10 = *(int *)(local_ec + 4);
          if (((iVar10 == 2) || (iVar10 == 0xb)) &&
             ((*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0 ||
              (iVar10 != 2)))) {
            iVar10 = *(int *)(local_ec + 0x38);
            if (*(int *)(local_ec + 0x3c) == 0 && iVar10 == 0) {
              uVar32 = FUN_00022190();
              uVar19 = 5;
              pcVar17 = (char *)dcgettext();
              printf(pcVar17,uVar32,uVar19);
            }
            else {
              uVar32 = *(undefined4 *)(local_ec + 0x24);
              uVar21 = FUN_0006b250();
              local_34[0] = uVar21;
              uVar19 = FUN_00022190();
              pcVar17 = (char *)dcngettext(0,&UNK_00050d0a + unaff_EBP,&UNK_00050cde + unaff_EBP,
                                           local_34[0],5,uVar32,iVar10);
              printf(pcVar17,uVar19,uVar21);
              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {
                puVar31 = &UNK_00050d6e + unaff_EBP;
                uVar21 = 5;
                pcVar17 = (char *)dcgettext();
                printf(pcVar17,puVar31,uVar21);
              }
              else {
                puVar31 = &UNK_00050d32 + unaff_EBP;
                uVar21 = 5;
                pcVar17 = (char *)dcgettext();
                printf(pcVar17,puVar31,uVar21);
              }
              if (*(int *)("<corrupt string table index: %3ld>" + unaff_EBP + 0x12) == 0) {
                local_80 = (void *)FUN_00022830();
              }
              else {
                local_80 = (void *)FUN_000222e0();
              }
              if (local_80 != (void *)0x0) {
                uVar23 = *(uint *)(local_ec + 0x28);
                if (uVar23 == *(uint *)(iVar9 + 0x58)) {
                  local_bc = *(void **)(iVar9 + 100);
                  local_d4 = *(uint *)(iVar9 + 0x68);
                }
                else {
                  local_d4 = 0;
                  local_bc = (void *)0x0;
                  if (uVar23 < *(uint *)(iVar9 + 0x54)) {
                    uVar21 = 5;
                    iVar2 = *(int *)(iVar9 + 0x5c) + uVar23 * 0x48;
                    iVar10 = unaff_EBP + 0x45491;
                    uVar32 = dcgettext();
                    local_bc = (void *)FUN_0001bf90(1,0,*(undefined4 *)(iVar2 + 0x20),
                                                    *(undefined4 *)(iVar2 + 0x24),uVar32,iVar10,
                                                    uVar21);
                    if (local_bc != (void *)0x0) {
                      local_d4 = *(uint *)(iVar2 + 0x20);
                    }
                  }
                }
                if (local_34[0] != 0) {
                  uVar23 = 0;
                  puVar18 = (uint *)((int)local_80 + 0x10);
                  pcVar17 = (char *)(unaff_EBP + 0x48ecf);
                  do {
                    printf(&UNK_00048f32 + unaff_EBP,uVar23);
                    FUN_0001e910();
                    putc(0x20,(FILE *)*puVar1);
                    FUN_0001e910();
                    uVar32 = FUN_00023ff0();
                    printf(pcVar17,uVar32);
                    uVar32 = FUN_00025a40();
                    printf((char *)(unaff_EBP + 0x48ed5),uVar32);
                    if (*(char *)(iVar9 + 0x17) == '\x06') {
                      uVar32 = FUN_00023de0();
                      printf(pcVar17,uVar32);
                    }
                    else {
                      bVar4 = *(byte *)((int)puVar18 + 5);
                      uVar32 = FUN_00023d60();
                      printf(pcVar17,uVar32);
                      if (*(byte *)((int)puVar18 + 5) != (bVar4 & 3)) {
                        uVar32 = FUN_00032810();
                        printf((char *)(unaff_EBP + 0x48edb),uVar32);
                      }
                    }
                    uVar32 = FUN_00023e70();
                    printf(&UNK_00048f38 + unaff_EBP,uVar32);
                    if (local_d4 <= *puVar18) {
                      uVar21 = 5;
                      dcgettext();
                    }
                    FUN_0001fd20();
                    iVar10 = FUN_0002cf40(local_d4,uVar23,puVar18,puVar18 + 2,local_2c,&local_36,
                                          uVar21);
                    if (iVar10 != 0) {
                      if (local_2c[0] == 0) {
                        uVar21 = (uint)local_36;
                        printf((char *)(unaff_EBP + 0x48f3e),iVar10);
                      }
                      else {
                        __format = (char *)(unaff_EBP + 0x48d63);
                        if (local_2c[0] != 1) {
                          __format = (char *)(unaff_EBP + 0x48d62);
                        }
                        printf(__format,iVar10);
                      }
                    }
                    putc(10,(FILE *)*puVar1);
                    if (((((byte)((byte)puVar18[1] >> 4) == 0) &&
                         (uVar12 = *(uint *)(local_ec + 0x2c), uVar12 <= uVar23)) &&
                        (*(short *)(iVar9 + 0x42) != 8)) && (*(char *)(iVar9 + 0x17) != '\x06')) {
                      uVar32 = FUN_00022190();
                      puVar31 = &UNK_00050db2 + unaff_EBP;
                      uVar21 = 5;
                      uVar30 = 0;
                      uVar19 = dcgettext();
                      warn(uVar19,uVar23,uVar32,uVar12,uVar30,puVar31);
                    }
                    uVar23 = uVar23 + 1;
                    puVar18 = puVar18 + 7;
                  } while (uVar23 < local_34[0]);
                }
                free(local_80);
                if (*(void **)(iVar9 + 100) != local_bc) {
                  free(local_bc);
                }
              }
            }
          }
          local_b0 = local_b0 + 1;
          local_ec = local_ec + 0x48;
        } while (local_b0 < *(uint *)(iVar9 + 0x54));
      }
      goto LAB_00033418;
    }
    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) == 0)
    goto LAB_00033418;
LAB_000337b9:
    puVar31 = &UNK_00050dee + unaff_EBP;
    uVar32 = 5;
    pcVar17 = (char *)dcgettext();
    printf(pcVar17,puVar31,uVar32);
    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);
    if (iVar9 == 0) goto LAB_000337f0;
LAB_00033426:
    local_7c = (size_t)lVar28;
    uVar21 = (uint)((ulonglong)lVar29 >> 0x20);
    local_e0 = (uint)lVar29;
    if (local_78 != (uint *)0x0) {
      pcVar17 = (char *)dcngettext(0,&UNK_00050e72 + unaff_EBP,&UNK_00050e36 + unaff_EBP,local_7c);
      printf(pcVar17,local_7c);
      puVar18 = (uint *)calloc(local_7c,4);
      if (puVar18 == (uint *)0x0) goto LAB_00034166;
      pvVar15 = (void *)FUN_0005da70();
      memset(pvVar15,0,local_e0);
      puVar31 = &UNK_00050ee6 + unaff_EBP;
      uVar32 = 5;
      pcVar17 = (char *)dcgettext();
      printf(pcVar17,puVar31,uVar32);
      if (lVar28 == 0) {
        free(pvVar15);
        puVar13 = (uint *)calloc(1,4);
        if (puVar13 == (uint *)0x0) goto LAB_00034764;
      }
      else {
        local_c4 = local_78;
        uVar23 = 0;
        uVar12 = 0;
        local_b4 = puVar18;
        do {
          uVar24 = local_c4[1];
          if (uVar24 == 0 && *local_c4 == 0) {
            local_f4 = (uint *)(uVar23 + 1);
          }
          else {
            uVar22 = *local_b4;
            iVar9 = uVar12 - uVar22;
            uVar16 = *local_c4;
            do {
              uVar22 = uVar22 + 1;
              uVar12 = iVar9 + uVar22;
              local_f4 = (uint *)(uVar23 + 1);
              if (uVar23 < uVar22) {
                local_f4 = (uint *)(uVar23 + 2);
                uVar23 = uVar23 + 1;
              }
              if ((uVar21 <= uVar24 && (uint)(uVar16 < local_e0) <= uVar24 - uVar21) ||
                 (*(char *)((int)pvVar15 + uVar16) != '\0')) {
                *local_b4 = uVar22;
                dcgettext();
                error();
                goto LAB_000335a5;
              }
              *(char *)((int)pvVar15 + uVar16) = '\x01';
              uVar6 = *(uint *)((int)local_cc + uVar16 * 8);
              uVar24 = *(uint *)((int)local_cc + uVar16 * 8 + 4);
              uVar16 = uVar6;
            } while (uVar24 != 0 || uVar6 != 0);
            *local_b4 = uVar22;
          }
LAB_000335a5:
          local_c4 = local_c4 + 2;
          local_b4 = local_b4 + 1;
        } while (local_78 + local_7c * 2 != local_c4);
        free(pvVar15);
        puVar13 = (uint *)calloc((size_t)local_f4,4);
        if (puVar13 == (uint *)0x0) {
LAB_00034764:
          free(puVar18);
          goto LAB_00034166;
        }
        puVar14 = puVar18;
        do {
          uVar21 = *puVar14;
          puVar14 = puVar14 + 1;
          puVar13[uVar21] = puVar13[uVar21] + 1;
        } while (puVar18 + local_7c != puVar14);
        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /
                (double)(int)local_7c;
        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)
              );
        if (uVar23 != 0) {
          uVar24 = 0;
          uVar21 = 1;
          do {
            uVar22 = puVar13[uVar21];
            uVar24 = uVar24 + uVar22 * uVar21;
            dVar3 = (double)(((float)uVar24 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) / (float)uVar12
                            );
            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar22,
                   (double)(((float)uVar22 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /
                           (float)(int)local_7c),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));
            bVar25 = uVar23 != uVar21;
            uVar21 = uVar21 + 1;
          } while (bVar25);
        }
      }
      free(puVar13);
      free(puVar18);
      iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);
      goto LAB_000337ff;
    }
  }
  else {
    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);
    lVar28 = *(longlong *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
    if (iVar10 != 0 || uVar21 != 0) {
      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) != 0) {
LAB_00033f90:
        sVar5 = *(short *)(iVar9 + 0x42);
        if ((sVar5 == -0x6fda || sVar5 == 0x16) || (sVar11 = 4, sVar5 == -0x5c70)) {
          sVar11 = (uint)(*(char *)(iVar9 + 0x14) == '\x02') * 4 + 4;
        }
        iVar10 = FUN_00026dc0();
        iVar10 = fseek(*(FILE **)(iVar9 + 4),
                       iVar10 + *(int *)("  Version:                           0x%lx\n" +
                                        unaff_EBP + 0x26),0);
        if (((iVar10 == 0) && (sVar20 = fread(local_34,sVar11,1,*(FILE **)(iVar9 + 4)), sVar20 == 1)
            ) && (sVar11 = fread(local_2c,sVar11,1,*(FILE **)(iVar9 + 4)), sVar11 == 1)) {
          lVar28 = (**(code **)(&UNK_000870fe + unaff_EBP))();
          lVar29 = (**(code **)(&UNK_000870fe + unaff_EBP))();
          local_78 = (uint *)FUN_0001e0f0();
          local_cc = (void *)FUN_0001e0f0();
          if ((local_78 != (uint *)0x0) && (local_cc != (void *)0x0)) goto LAB_0003325f;
        }
        else {
          dcgettext();
          error();
          local_cc = (void *)0x0;
          local_78 = (uint *)0x0;
        }
        if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {
          return 0;
        }
        free(local_78);
        free(local_cc);
        local_cc = (void *)0x0;
        local_78 = (uint *)0x0;
        lVar28 = 0;
        lVar29 = 0;
        goto LAB_0003325f;
      }
      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {
        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) == 0)
           && (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) != 0))
        goto LAB_00033f90;
        local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);
        local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);
        if (local_54 == 0 && local_50 == 0) goto LAB_00033382;
        local_78 = (uint *)0x0;
        lVar29 = 0;
        local_cc = (void *)0x0;
        lVar28 = 0;
LAB_00033293:
        if ((*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)
           || (*(int *)("  Version:                           0x%lx\n" + unaff_EBP + 0xe) == 0))
        goto LAB_000332b0;
        goto LAB_00032d84;
      }
      local_54 = *(uint *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10);
      local_50 = *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe);
      if (local_54 != 0 || local_50 != 0) {
        local_78 = (uint *)0x0;
        lVar29 = 0;
        local_cc = (void *)0x0;
        lVar28 = 0;
        goto LAB_000332bc;
      }
LAB_00033382:
      lVar27 = CONCAT44(local_50,local_54);
      local_90 = (void *)0x0;
      local_6c = (uint *)0x0;
      local_cc = (void *)0x0;
      local_78 = (uint *)0x0;
      lVar26 = lVar27;
      lVar29 = lVar27;
      lVar28 = lVar27;
      goto LAB_000333c0;
    }
    local_cc = (void *)0x0;
    local_78 = (uint *)0x0;
    lVar29 = lVar28;
LAB_0003325f:
    if (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) == 0 &&
        *(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) == 0)
    goto LAB_00033740;
    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2) == 0) {
      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)
      goto LAB_00033293;
LAB_000332b0:
      uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
      iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);
      goto LAB_000332bc;
    }
LAB_00032d84:
    iVar10 = FUN_00026dc0();
    iVar10 = fseek(*(FILE **)(iVar9 + 4),
                   iVar10 + *(int *)("  Version:                           0x%lx\n" +
                                    unaff_EBP + 0x26),0);
    if (iVar10 == 0) {
      sVar11 = fread(local_2c,0x10,1,*(FILE **)(iVar9 + 4));
      if (sVar11 != 1) goto LAB_00034303;
      puVar1 = (undefined4 *)(&UNK_000870fe + unaff_EBP);
      lVar26 = (*(code *)*puVar1)();
      lVar27 = (*(code *)*puVar1)();
      uVar23 = (uint)((ulonglong)lVar27 >> 0x20);
      uVar21 = (uint)lVar27;
      (*(code *)*puVar1)();
      iVar10 = FUN_00026dc0();
      iVar10 = fseek(*(FILE **)(iVar9 + 4),
                     iVar10 + *(int *)("  Version:                           0x%lx\n" +
                                      unaff_EBP + 0x26),0);
      if (iVar10 != 0) {
        dcgettext();
        error();
        lVar26 = 0;
        local_6c = (uint *)0x0;
        goto LAB_00034347;
      }
      local_6c = (uint *)FUN_0001e0f0();
      if (local_6c == (uint *)0x0) {
LAB_000346fb:
        lVar26 = 0;
        goto LAB_00034347;
      }
      if (lVar26 == 0) goto LAB_00034347;
      local_54 = 0;
      local_50 = 0;
      local_ec = 0xffffffff;
      uStack_e8 = 0;
      do {
        uVar12 = local_6c[local_54 * 2];
        uVar24 = (local_6c + local_54 * 2)[1];
        if (uVar24 != 0 || uVar12 != 0) {
          if (uVar24 < uVar23 || uVar24 - uVar23 < (uint)(uVar12 < uVar21)) {
            return 0;
          }
          if ((uStack_e8 < uVar24 || uStack_e8 - uVar24 < (uint)(local_ec < uVar12)) ||
             (local_ec == 0xffffffff && uStack_e8 == 0)) {
            local_ec = uVar12;
            uStack_e8 = uVar24;
          }
        }
        bVar25 = 0xfffffffe < local_54;
        local_54 = local_54 + 1;
        local_50 = local_50 + (uint)bVar25;
      } while (lVar26 != CONCAT44(local_50,local_54));
      if (uStack_e8 == 0 && local_ec == 0xffffffff) goto LAB_000346fb;
      uVar12 = local_ec - uVar21;
      uVar21 = (uStack_e8 - uVar23) - (uint)(local_ec < uVar21);
      iVar10 = FUN_00026dc0();
      iVar10 = fseek(*(FILE **)(iVar9 + 4),
                     iVar10 + *(int *)("  Version:                           0x%lx\n" +
                                      unaff_EBP + 0x26),0);
      if (iVar10 != 0) {
LAB_00033073:
        dcgettext();
        error();
        lVar26 = 0;
        goto LAB_00034347;
      }
      do {
        sVar11 = fread(local_2c,4,1,*(FILE **)(iVar9 + 4));
        if (sVar11 != 1) goto LAB_00033073;
        if ((uVar21 & uVar12) == 0xffffffff) goto LAB_000346fb;
        bVar25 = 0xfffffffe < uVar12;
        uVar12 = uVar12 + 1;
        uVar21 = uVar21 + bVar25;
        lVar26 = CONCAT44(uVar21,uVar12);
        uVar23 = (*(code *)*puVar1)();
      } while ((uVar23 & 1) == 0);
      iVar10 = FUN_00026dc0();
      iVar10 = fseek(*(FILE **)(iVar9 + 4),
                     iVar10 + *(int *)("  Version:                           0x%lx\n" +
                                      unaff_EBP + 0x26),0);
      if (iVar10 != 0) goto LAB_00033073;
      local_90 = (void *)FUN_0001e0f0();
      if (local_90 == (void *)0x0) goto LAB_00034347;
    }
    else {
LAB_00034303:
      dcgettext();
      error();
      lVar26 = 0;
      lVar27 = 0;
      local_6c = (uint *)0x0;
LAB_00034347:
      free(local_6c);
      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0) {
        return 0;
      }
      local_90 = (void *)0x0;
      local_6c = (uint *)0x0;
      local_54 = 0;
      local_50 = 0;
    }
    uVar21 = *(uint *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x1e);
    iVar10 = *(int *)("Skipping unknown C6000 relocation type: %d\n" + unaff_EBP + 0x22);
    if ((*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 0xe) != 0 ||
        iVar10 != 0) ||
        (*(int *)("Skipping unexpected ARM relocation type %s\n" + unaff_EBP + 10) != 0 ||
        uVar21 != 0)) goto LAB_000333c0;
LAB_0003378f:
    if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x2e) != 0)
    goto LAB_00033a30;
    if (*(int *)("Unknown section relocation type %d encountered\n" + unaff_EBP + 2) != 0) {
      if (*(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 0x12) != 0)
      goto LAB_000337b9;
LAB_000341b6:
      local_ec = *(int *)(iVar9 + 0x5c);
      if (local_ec == 0) goto LAB_000337b9;
      goto LAB_00033a43;
    }
LAB_00033418:
    iVar9 = *(int *)("Skipping unexpected relocation at offset 0x%lx\n" + unaff_EBP + 2);
    if (iVar9 != 0) goto LAB_00033426;
LAB_000337f0:
    if (local_78 == (uint *)0x0) {
      return 1;
    }
LAB_000337ff:
    free(local_78);
    free(local_cc);
  }
  local_70 = (uint)((ulonglong)lVar26 >> 0x20);
  local_74 = (uint)lVar26;
  local_88 = (int)((ulonglong)lVar27 >> 0x20);
  local_8c = (uint)lVar27;
  if (local_6c == (uint *)0x0) {
    return 1;
  }
  if (iVar9 == 0) {
    return 1;
  }
  pcVar17 = (char *)dcngettext(0,&UNK_00050fb6 + unaff_EBP,&UNK_00050f6e + unaff_EBP,local_54);
  printf(pcVar17,local_54);
  puVar18 = (uint *)calloc(local_54,4);
  if (puVar18 != (uint *)0x0) {
    puVar31 = &UNK_00050ee6 + unaff_EBP;
    uVar32 = 5;
    pcVar17 = (char *)dcgettext();
    printf(pcVar17,puVar31,uVar32);
    if (local_50 == 0 && local_54 == 0) {
      puVar13 = (uint *)calloc(1,4);
      if (puVar13 != (uint *)0x0) goto LAB_000331cb;
    }
    else {
      local_c4 = (uint *)0x0;
      local_cc = (void *)0x0;
      local_f4 = local_6c;
      local_dc = puVar18;
      do {
        uVar21 = *local_f4;
        if (local_f4[1] != 0 || uVar21 != 0) {
          uVar23 = uVar21 - local_8c;
          uVar21 = (local_f4[1] - local_88) - (uint)(uVar21 < local_8c);
          if (uVar21 < local_70 || uVar21 - local_70 < (uint)(uVar23 < local_74)) {
            uVar12 = *(uint *)((int)local_90 + uVar23 * 8) & 1;
            if (uVar12 == 0) {
              uVar7 = (lVar27 - *(longlong *)local_f4) + lVar26 + 1;
              iVar9 = 0;
              uVar12 = 1;
              do {
                bVar25 = 0xfffffffe < uVar12;
                uVar12 = uVar12 + 1;
                iVar9 = iVar9 + (uint)bVar25;
                uVar21 = (uint)uVar7;
                uVar8 = uVar7;
                if (uVar7 == CONCAT44(iVar9,uVar12)) break;
                uVar21 = uVar12;
                uVar8 = CONCAT44(iVar9,uVar12);
              } while ((*(byte *)((int)local_90 + (uVar23 + 1 + uVar12) * 8 + -0x10) & 1) == 0);
            }
            else {
              uVar21 = 1;
              uVar8 = (ulonglong)uVar12;
            }
          }
          else {
            uVar21 = 1;
            uVar8 = 1;
          }
          local_58 = (int)(uVar8 >> 0x20);
          local_5c = (uint)uVar8;
          *local_dc = uVar21;
          if (local_58 != 0 || (uint)-local_58 < (uint)(local_cc < local_5c)) {
            local_cc = (void *)uVar21;
          }
          local_c4 = (uint *)((int)local_c4 + uVar21);
        }
        local_f4 = local_f4 + 2;
        local_dc = local_dc + 1;
      } while (local_6c + local_54 * 2 != local_f4);
      puVar13 = (uint *)calloc((int)local_cc + 1,4);
      if (puVar13 != (uint *)0x0) {
        puVar14 = puVar18;
        do {
          uVar21 = *puVar14;
          puVar14 = puVar14 + 1;
          puVar13[uVar21] = puVar13[uVar21] + 1;
        } while (puVar18 + local_54 != puVar14);
        dVar3 = ((double)*puVar13 * (double)*(float *)(&DAT_0005b7c2 + unaff_EBP)) /
                (double)(int)local_54;
        printf((char *)(unaff_EBP + 0x48f47),*puVar13,SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20)
              );
        if (local_cc != (void *)0x0) {
          uVar23 = 0;
          uVar21 = 1;
          do {
            uVar12 = puVar13[uVar21];
            uVar23 = uVar23 + uVar12 * uVar21;
            dVar3 = (double)(((float)uVar23 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /
                            (float)local_c4);
            printf(&UNK_00050f4a + unaff_EBP,uVar21,uVar12,
                   (double)(((float)uVar12 * *(float *)(&DAT_0005b7c2 + unaff_EBP)) /
                           (float)(int)local_54),SUB84(dVar3,0),(int)((ulonglong)dVar3 >> 0x20));
            bVar25 = local_cc != (void *)uVar21;
            uVar21 = uVar21 + 1;
          } while (bVar25);
        }
LAB_000331cb:
        free(puVar13);
        free(puVar18);
        free(local_6c);
        free(local_90);
        return 1;
      }
    }
    free(puVar18);
  }
LAB_00034166:
  dcgettext();
  error();
  return 0;
}

