
/* WARNING: Type propagation algorithm not settling */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* DWARF original prototype: void do_write(Output_section_incremental_inputs<64,_false> * this,
   Output_file * of) */

void __thiscall
gold::Output_section_incremental_inputs<64,_false>::do_write
          (Output_section_incremental_inputs<64,_false> *this,Output_file *of)

{
  int iVar1;
  uint uVar2;
  uint *global_syms;
  uint uVar3;
  uchar *puVar4;
  ushort uVar5;
  undefined *puVar6;
  Output_data_space *pOVar7;
  uint uVar8;
  uint uVar9;
  uint *puVar10;
  uint extraout_v1;
  undefined *puVar11;
  int *piVar12;
  int iVar13;
  int iVar14;
  undefined4 uVar15;
  int *piVar16;
  undefined4 *puVar17;
  int iVar18;
  int iVar19;
  uchar *in_t1;
  uchar *puVar20;
  Stringpool *strtab;
  int *piVar21;
  uchar *oview;
  uchar *puVar22;
  undefined4 *puVar23;
  Output_section_incremental_inputs<64,_false> *unaff_s4;
  uchar *puVar24;
  Output_file *unaff_s6;
  code *pcVar25;
  Incremental_inputs *pIVar26;
  off_t in_stack_00000010;
  
  iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.field_0x20;
  pIVar26 = this->inputs_;
  strtab = pIVar26->strtab_;
  if (-1 < iVar1 << 2) goto LAB_00119650;
  iVar19 = (int)(this->super_Output_section_data).super_Output_data.offset_;
  iVar14 = *(int *)&(this->super_Output_section_data).super_Output_data.offset_;
  if (-1 < iVar1 << 1) goto LAB_00119634;
  iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.data_size_;
  puVar20 = *(uchar **)((int)&(this->super_Output_section_data).super_Output_data.data_size_ + 4);
  if (-1 < iVar14) {
    puVar11 = *(undefined **)&of->file_size_;
    puVar6 = (undefined *)((uint)(puVar20 + iVar19 < puVar20) + iVar14);
    in_t1 = *(uchar **)((int)&of->file_size_ + 4);
    if (((int)puVar6 <= (int)puVar11) && ((puVar6 != puVar11 || (puVar20 + iVar19 <= in_t1)))) {
      pOVar7 = pIVar26->symtab_section_;
      piVar21 = (int *)of->base_;
      iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                        super_Output_data.field_0x20;
      oview = (uchar *)((int)piVar21 + iVar19);
      unaff_s4 = this;
      unaff_s6 = of;
      if (-1 < iVar14 << 2) goto LAB_00119650;
      iVar19 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                        super_Output_data.offset_;
      puVar17 = *(undefined4 **)
                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                        super_Output_data.offset_ + 4);
      if (-1 < iVar14 << 1) goto LAB_00119634;
      uVar2 = *(uint *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                        super_Output_data.data_size_;
      puVar22 = *(uchar **)
                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                        super_Output_data.data_size_ + 4);
      if (-1 < iVar19) {
        puVar6 = (undefined *)((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19);
        if ((int)puVar6 <= (int)puVar11) {
          uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17);
          iVar14 = 0;
          if (puVar6 == puVar11) goto LAB_001196c0;
LAB_0011940c:
          uVar8 = this->symtab_->output_count_;
          piVar21 = (int *)((int)piVar21 + (int)puVar17);
          if (uVar8 < 0x20000000) {
            puVar24 = (uchar *)(uVar8 << 2);
            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);
            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);
            uVar3 = (int)(pIVar26->inputs_).
                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>
                         ._M_impl._M_finish -
                    (int)(pIVar26->inputs_).
                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>
                         ._M_impl._M_start >> 2;
            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;
            uVar9 = pIVar26->command_line_key_ - 1;
            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.
                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>
                                   ._M_impl._M_start[uVar9 >> 0xd].
                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +
                             (uVar9 & 0x1fff) * 4);
            *(uint *)(oview + 4) =
                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
            oview[0] = '\x02';
            oview[1] = '\0';
            oview[2] = '\0';
            oview[3] = '\0';
            oview[0xc] = '\0';
            oview[0xd] = '\0';
            oview[0xe] = '\0';
            oview[0xf] = '\0';
            *(uint *)(oview + 8) =
                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +
                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;
            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);
            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);
            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;
            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;
            uVar15 = 0x59f;
            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {
              do {
                (*(code *)PTR_do_gold_unreachable_004323c4)
                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,
                           PTR_s_alize_xindex_004323b4 + -0x37c8);
LAB_0011969c:
                uVar15 = 0x59c;
              } while( true );
            }
            piVar12 = (int *)((int)piVar21 + (int)puVar22);
            puVar10 = global_syms;
            if (uVar8 != 0) {
              do {
                uVar2 = *puVar10;
                piVar16 = piVar21 + 1;
                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +
                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;
                puVar10 = puVar10 + 1;
                piVar21 = piVar16;
              } while (piVar16 != piVar12);
            }
            (*(code *)PTR_operator_delete___004323dc)(global_syms);
            pOVar7 = pIVar26->got_plt_section_;
            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                             super_Output_data.field_0x20;
            if (-1 < iVar1 << 2) goto LAB_00119650;
            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                              super_Output_data.offset_;
            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.
                          super_Output_data.offset_;
            if (-1 < iVar1 << 1) goto LAB_00119634;
            puVar20 = *(uchar **)
                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                              super_Output_data.data_size_ + 4);
            if (-1 < iVar14) {
              in_t1 = puVar20 + iVar19;
              iVar14 = (uint)(in_t1 < puVar20) + iVar14;
              if (iVar14 <= *(int *)&of->file_size_) {
                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;
                goto LAB_001195dc;
              }
            }
            goto LAB_00119628;
          }
          puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8;
          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();
          puVar23 = *(undefined4 **)(puVar11 + 0x30);
          piVar21 = (int *)*puVar23;
          if (piVar21 == (int *)puVar23[1]) {
            return;
          }
          piVar12 = (int *)*piVar21;
          if ((int)puVar17 - iVar14 != piVar12[3]) {
            iVar1 = *(int *)(puVar6 + 0x318cd8);
            goto LAB_00119850;
          }
          uVar2 = piVar12[1];
          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;
          iVar1 = *(int *)(puVar6 + 0x318cd8);
          goto LAB_00119868;
        }
      }
    }
  }
LAB_00119628:
  pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);
LAB_0011962c:
  while( true ) {
    (*pcVar25)();
LAB_00119634:
    (*(code *)PTR_do_gold_unreachable_004323c4)
              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);
    unaff_s4 = this;
    unaff_s6 = of;
LAB_00119650:
    of = unaff_s6;
    this = unaff_s4;
    iVar19 = 0xe3;
    (*(code *)PTR_do_gold_unreachable_004323c4)
              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);
LAB_0011966c:
    in_t1 = (uchar *)(uint)(*(uchar **)((int)&of->file_size_ + 4) < in_t1);
    if (in_t1 == (uchar *)0x0) break;
    pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);
  }
LAB_001195dc:
  write_got_plt(this,of->base_ + iVar19,in_stack_00000010);
  return;
LAB_001196a4:
  iVar14 = 0x108;
  puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);
  puVar11 = PTR_LAB_0043220c + 0x46d4;
  (*(code *)PTR_do_gold_unreachable_004323c4)();
  uVar8 = extraout_v1;
LAB_001196c0:
  if (uVar8 != 0) goto code_r0x001196c8;
  goto LAB_0011940c;
code_r0x001196c8:
  pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);
  goto LAB_0011962c;
  while( true ) {
    uVar2 = piVar12[1];
    iVar1 = *(int *)(puVar6 + 0x318cd8);
    puVar17 = puVar17 + 6;
    if (*(uint *)(iVar19 + 0x28) < uVar2) break;
LAB_0011977c:
    uVar15 = *(undefined4 *)
              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +
              (uVar2 - 1 & 0x1fff) * 4);
    uVar5 = (**(code **)(*piVar12 + 8))(piVar12);
    iVar1 = *piVar21;
    if (*(char *)(iVar1 + 0x20) != '\0') {
      uVar5 = uVar5 | 0x8000;
    }
    if (*(char *)(iVar1 + 0x21) != '\0') {
      uVar5 = uVar5 | 0x4000;
    }
    iVar13 = piVar12[6];
    piVar16 = (int *)puVar23[1];
    piVar21 = piVar21 + 1;
    *puVar17 = uVar15;
    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);
    iVar18 = piVar12[7];
    *(ushort *)(puVar17 + 5) = uVar5;
    puVar17[3] = iVar13;
    puVar17[4] = iVar18;
    puVar17[2] = iVar13 >> 0x1f;
    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);
    if (piVar16 == piVar21) {
      return;
    }
    piVar12 = (int *)*piVar21;
    iVar1 = *(int *)(puVar6 + 0x318cd8);
    if ((int)(puVar17 + 6) - iVar14 != piVar12[3]) goto LAB_00119850;
  }
LAB_00119868:
  pcVar25 = *(code **)(puVar6 + 0x318ce8);
  iVar14 = *(int *)(puVar6 + 0x318b30) + 0x46d4;
  (*pcVar25)(iVar14,0x108,iVar1 + -0x3578);
  puVar17 = (undefined4 *)**(int **)(iVar14 + 0x30);
  if (puVar17 == (undefined4 *)(*(int **)(iVar14 + 0x30))[1]) {
    return;
  }
  iVar1 = *(int *)(pcVar25 + 0x318b34);
  piVar21 = (int *)*puVar17;
  uVar2 = (**(code **)(*piVar21 + 8))(piVar21);
  if (uVar2 < 6) {
                    /* WARNING: Could not recover jumptable at 0x00119950. Too many branches */
                    /* WARNING: Treating indirect jump as call */
    (*(pcVar25 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();
    return;
  }
  uVar15 = 0x6f2;
  do {
    iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x377c;
    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fcc,uVar15,iVar1);
    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);
    (**(code **)(pcVar25 + 0x318b44))
              (*(int *)(pcVar25 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar25 + 0x318b34) + -0x3578);
    iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x366c;
    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xaa,iVar1);
    iVar1 = iVar1 + -0x35d8;
    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fe0,0x1043,iVar1);
    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);
    uVar15 = 0x618;
  } while( true );
LAB_00119850:
  iVar1 = iVar1 + -0x3768;
  (**(code **)(puVar6 + 0x318ce8))(*(int *)(puVar6 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);
  goto LAB_00119868;
}



/* WARNING: Type propagation algorithm not settling */

undefined4 *
FUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,
            undefined4 param_4,longlong param_5)

{
  int iVar1;
  uint uVar2;
  undefined *puVar3;
  uint *puVar4;
  uint uVar5;
  uchar *puVar6;
  ushort uVar7;
  undefined *puVar8;
  int iVar9;
  uint uVar10;
  uint uVar11;
  uint *puVar12;
  uint extraout_v1;
  undefined *puVar13;
  int *piVar14;
  int iVar15;
  undefined4 uVar16;
  undefined4 *puVar17;
  int iVar18;
  int iVar19;
  undefined *in_t1;
  undefined *puVar20;
  Stringpool_template *pSVar21;
  int *piVar22;
  int *piVar23;
  undefined4 *puVar24;
  uchar *puVar25;
  undefined4 *puVar26;
  Output_section_incremental_inputs<64,false> *unaff_s4;
  int unaff_s6;
  code *pcVar27;
  int *piVar28;
  
  piVar28 = *(int **)(param_1 + 0x30);
  pSVar21 = (Stringpool_template *)piVar28[10];
  if (-1 < *(int *)(param_1 + 0x20) << 2) goto LAB_00119650;
  if (-1 < *(int *)(param_1 + 0x20) << 1) goto LAB_00119634;
  iVar1 = *(int *)(param_1 + 0x10);
  puVar20 = *(undefined **)(param_1 + 0x14);
  if (-1 < *(int *)(param_1 + 0x18)) {
    puVar13 = *(undefined **)(param_2 + 8);
    puVar8 = (undefined *)
             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));
    in_t1 = *(undefined **)(param_2 + 0xc);
    if (((int)puVar8 <= (int)puVar13) &&
       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {
      iVar9 = piVar28[0xe];
      piVar22 = *(int **)(param_2 + 0x10);
      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));
      unaff_s4 = param_1;
      unaff_s6 = param_2;
      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;
      iVar19 = *(int *)(iVar9 + 0x18);
      puVar17 = *(undefined4 **)(iVar9 + 0x1c);
      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;
      uVar2 = *(uint *)(iVar9 + 0x10);
      puVar8 = *(undefined **)(iVar9 + 0x14);
      if (-1 < iVar19) {
        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);
        if ((int)puVar3 <= (int)puVar13) {
          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);
          iVar9 = 0;
          if (puVar3 == puVar13) goto LAB_001196c0;
LAB_0011940c:
          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);
          piVar22 = (int *)((int)piVar22 + (int)puVar17);
          if (uVar10 < 0x20000000) {
            puVar13 = (undefined *)(uVar10 << 2);
            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);
            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);
            uVar5 = piVar28[1] - *piVar28 >> 2;
            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;
            uVar11 = piVar28[9] - 1;
            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +
                              (uVar11 & 0x1fff) * 4);
            *(uint *)(puVar25 + 4) =
                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;
            puVar25[0] = '\x02';
            puVar25[1] = '\0';
            puVar25[2] = '\0';
            puVar25[3] = '\0';
            puVar25[0xc] = '\0';
            puVar25[0xd] = '\0';
            puVar25[0xe] = '\0';
            puVar25[0xf] = '\0';
            *(uint *)(puVar25 + 8) =
                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +
                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;
            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files
                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);
            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks
                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);
            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;
            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;
            uVar16 = 0x59f;
            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {
              do {
                (*(code *)PTR_do_gold_unreachable_004323c4)
                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,
                           PTR_s_alize_xindex_004323b4 + -0x37c8);
LAB_0011969c:
                uVar16 = 0x59c;
              } while( true );
            }
            piVar14 = (int *)((int)piVar22 + (int)puVar8);
            puVar12 = puVar4;
            if (uVar10 != 0) {
              do {
                uVar2 = *puVar12;
                piVar23 = piVar22 + 1;
                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +
                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;
                puVar12 = puVar12 + 1;
                piVar22 = piVar23;
              } while (piVar23 != piVar14);
            }
            (*(code *)PTR_operator_delete___004323dc)(puVar4);
            iVar1 = piVar28[0x10];
            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;
            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;
            if (-1 < *(int *)(iVar1 + 0x18)) {
              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);
              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);
              if (iVar1 <= *(int *)(param_2 + 8)) {
                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;
                goto LAB_001195dc;
              }
            }
            goto LAB_00119628;
          }
          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;
          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();
          puVar26 = *(undefined4 **)(puVar13 + 0x30);
          piVar28 = (int *)*puVar26;
          if (piVar28 == (int *)puVar26[1]) {
            return puVar17;
          }
          piVar22 = (int *)*piVar28;
          if ((int)puVar17 - iVar9 != piVar22[3]) {
            iVar1 = *(int *)(puVar20 + 0x318cd8);
            goto LAB_00119850;
          }
          uVar2 = piVar22[1];
          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;
          iVar1 = *(int *)(puVar20 + 0x318cd8);
          goto LAB_00119868;
        }
      }
    }
  }
LAB_00119628:
  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);
LAB_0011962c:
  while( true ) {
    (*pcVar27)();
LAB_00119634:
    (*(code *)PTR_do_gold_unreachable_004323c4)
              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);
    unaff_s4 = param_1;
    unaff_s6 = param_2;
LAB_00119650:
    param_2 = unaff_s6;
    param_1 = unaff_s4;
    (*(code *)PTR_do_gold_unreachable_004323c4)
              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);
LAB_0011966c:
    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);
    if (in_t1 == (undefined *)0x0) break;
    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);
  }
LAB_001195dc:
  puVar17 = (undefined4 *)
            gold::Output_section_incremental_inputs<64,false>::write_got_plt
                      ((uchar *)param_1,param_5);
  return puVar17;
LAB_001196a4:
  iVar9 = 0x108;
  puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);
  puVar13 = PTR_LAB_0043220c + 0x46d4;
  (*(code *)PTR_do_gold_unreachable_004323c4)();
  uVar10 = extraout_v1;
LAB_001196c0:
  if (uVar10 != 0) goto code_r0x001196c8;
  goto LAB_0011940c;
code_r0x001196c8:
  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);
  goto LAB_0011962c;
  while( true ) {
    uVar2 = piVar22[1];
    iVar1 = *(int *)(puVar20 + 0x318cd8);
    puVar17 = puVar24;
    if (*(uint *)(iVar19 + 0x28) < uVar2) break;
LAB_0011977c:
    uVar16 = *(undefined4 *)
              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +
              (uVar2 - 1 & 0x1fff) * 4);
    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);
    iVar1 = *piVar28;
    if (*(char *)(iVar1 + 0x20) != '\0') {
      uVar7 = uVar7 | 0x8000;
    }
    if (*(char *)(iVar1 + 0x21) != '\0') {
      uVar7 = uVar7 | 0x4000;
    }
    iVar15 = piVar22[6];
    puVar24 = puVar17 + 6;
    piVar14 = (int *)puVar26[1];
    piVar28 = piVar28 + 1;
    *puVar17 = uVar16;
    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);
    iVar18 = piVar22[7];
    *(ushort *)(puVar17 + 5) = uVar7;
    puVar17[3] = iVar15;
    puVar17[4] = iVar18;
    puVar17[2] = iVar15 >> 0x1f;
    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);
    if (piVar14 == piVar28) {
      return puVar24;
    }
    piVar22 = (int *)*piVar28;
    iVar1 = *(int *)(puVar20 + 0x318cd8);
    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;
  }
LAB_00119868:
  pcVar27 = *(code **)(puVar20 + 0x318ce8);
  puVar26 = (undefined4 *)(iVar1 + -0x3578);
  iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4;
  (*pcVar27)(iVar1,0x108,puVar26);
  puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30);
  if (puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]) {
    return puVar26;
  }
  iVar1 = *(int *)(pcVar27 + 0x318b34);
  piVar28 = (int *)*puVar17;
  uVar2 = (**(code **)(*piVar28 + 8))(piVar28);
  if (uVar2 < 6) {
                    /* WARNING: Could not recover jumptable at 0x00119950. Too many branches */
                    /* WARNING: Treating indirect jump as call */
    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();
    return puVar17;
  }
  uVar16 = 0x6f2;
  do {
    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;
    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);
    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);
    (**(code **)(pcVar27 + 0x318b44))
              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);
    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;
    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);
    iVar1 = iVar1 + -0x35d8;
    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);
    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);
    uVar16 = 0x618;
  } while( true );
LAB_00119850:
  iVar1 = iVar1 + -0x3768;
  (**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);
  goto LAB_00119868;
}


lui gp,0x32
addiu gp,gp,0xeb8
addu gp,gp,t9
addiu sp,sp,-0x58
lw v0,0x20(a0)
sw s8,0x50(sp)
ext v1,v0,0x1d,0x1
sw gp,0x18(sp)
sw ra,0x54(sp)
sw s7,0x4c(sp)
sw s6,0x48(sp)
sw s5,0x44(sp)
sw s4,0x40(sp)
sw s3,0x3c(sp)
sw s2,0x38(sp)
sw s1,0x34(sp)
sw s0,0x30(sp)
lw s8,0x30(a0)
beq v1,zero,0x00119650
_lw t3,0x28(s8)
ext v0,v0,0x1e,0x1
lw s1,0x1c(a0)
or s6,a1,zero
lw a1,0x18(a0)
beq v0,zero,0x00119634
_or s4,a0,zero
lw v0,0x10(a0)
lw t2,0x14(a0)
bltz a1,0x00119624
_sw v0,0x24(sp)
addu v0,t2,s1
lw a0,0x8(s6)
sltu v1,v0,t2
addu v1,v1,a1
slt a1,a0,v1
bne a1,zero,0x00119624
_lw t1,0xc(s6)
beq v1,a0,0x0011961c
_sltu v0,t1,v0
lw v1,0x38(s8)
lw s0,0x10(s6)
lw a1,0x20(v1)
ext v0,a1,0x1d,0x1
beq v0,zero,0x00119650
_addu s1,s0,s1
ext a1,a1,0x1e,0x1
lw a3,0x18(v1)
beq a1,zero,0x00119634
_lw a2,0x1c(v1)
lw v0,0x10(v1)
lw s2,0x14(v1)
bltz a3,0x00119624
_sw v0,0x20(sp)
addu v1,s2,a2
sltu v0,v1,s2
addu v0,v0,a3
slt a1,a0,v0
bne a1,zero,0x00119628
_lw t9,-0x6190(gp)
beq v0,a0,0x001196c0
_sltu v1,t1,v1
lw v0,0x34(s4)
sw t2,0x2c(sp)
sw t3,0x28(sp)
lw s7,0x10(v0)
lui v0,0x2000
sltu v0,s7,v0
beq v0,zero,0x001196d0
_addu s0,s0,a2
lw t9,-0x7ef4(gp)
sll s5,s7,0x2
jalr t9
_or a0,s5,zero
or a1,zero,zero
lw gp,0x18(sp)
or a0,v0,zero
or a2,s5,zero
lw t9,-0x3980(gp)
jalr t9
_or s3,v0,zero
lw t3,0x28(sp)
lw v0,0x4(s8)
lw a1,0x0(s8)
lw v1,0x24(s8)
lw a0,0x28(t3)
subu v0,v0,a1
lw gp,0x18(sp)
lw t2,0x2c(sp)
sltu a0,a0,v1
bne a0,zero,0x001196a4
_sra v0,v0,0x2
addiu v1,v1,-0x1
lw a1,0x1c(t3)
wsbh v0,v0
lw t9,-0x5eb8(gp)
srl a2,v1,0xd
sw t2,0x2c(sp)
andi v1,v1,0x1fff
sw t3,0x28(sp)
sll a0,a2,0x1
sll v1,v1,0x2
addu a0,a0,a2
rotr v0,v0,0x10
sll a0,a0,0x2
addiu a2,s1,0x10
addu a0,a1,a0
or a3,t3,zero
or a1,s1,zero
lw t4,0x0(a0)
or a0,s4,zero
addu v1,t4,v1
lui t4,0x200
lw v1,0x0(v1)
sw v0,0x4(s1)
sw t4,0x0(s1)
wsbh v0,v1
sw zero,0xc(s1)
rotr v0,v0,0x10
bal 0x0011808c
_sw v0,0x8(s1)
or a0,s4,zero
lw gp,0x18(sp)
or a2,v0,zero
lw t3,0x28(sp)
or a1,s1,zero
sw s7,0x14(sp)
sw s3,0x10(sp)
lw t9,-0x5eb4(gp)
bal 0x00118260
_or a3,t3,zero
subu v0,v0,s1
lw a0,0x24(sp)
sra v1,v0,0x1f
bne v1,a0,0x0011969c
_lw gp,0x18(sp)
lw t2,0x2c(sp)
bne v0,t2,0x0011969c
_lw v1,0x20(sp)
srl v0,s7,0x1e
bne v0,v1,0x00119684
_li a1,0x59f
bne s5,s2,0x00119688
_lw a2,-0x7e1c(gp)
beq s7,zero,0x0011957c
_addu a0,s0,s2
or v1,s3,zero
lw v0,0x0(v1)
addiu s0,s0,0x4
addiu v1,v1,0x4
wsbh v0,v0
rotr v0,v0,0x10
bne s0,a0,0x00119560
_sw v0,-0x4(s0)
lw t9,-0x7df4(gp)
jalr t9
_or a0,s3,zero
lw v0,0x40(s8)
lw v1,0x20(v0)
ext a0,v1,0x1d,0x1
beq a0,zero,0x00119650
_lw gp,0x18(sp)
ext v1,v1,0x1e,0x1
lw a0,0x18(v0)
beq v1,zero,0x00119634
_lw a1,0x1c(v0)
lw a2,0x10(v0)
bltz a0,0x00119624
_lw a3,0x14(v0)
addu t1,a3,a1
lw v1,0x8(s6)
sltu v0,t1,a3
addu v0,v0,a0
slt a0,v1,v0
bne a0,zero,0x00119628
_lw t9,-0x6190(gp)
beq v1,v0,0x0011966c
_nop
lw v0,0x10(s6)
or a0,s4,zero
lw ra,0x54(sp)
lw s8,0x50(sp)
lw s7,0x4c(sp)
addu a1,v0,a1
lw s6,0x48(sp)
lw s5,0x44(sp)
lw s4,0x40(sp)
lw s3,0x3c(sp)
lw s2,0x38(sp)
lw s1,0x34(sp)
lw s0,0x30(sp)
lw t9,-0x5eb0(gp)
b 0x00118f6c
_addiu sp,sp,0x58
beq v0,zero,0x001193b4
_nop
lw t9,-0x6190(gp)
addiu t9,t9,0x2f54
jalr t9
_nop
lw a2,-0x7e1c(gp)
li a1,0xcf
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,-0x36c8
jalr t9
_addiu a0,a0,-0x4fe0
lw a2,-0x7e1c(gp)
li a1,0xe3
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,-0x36bc
jalr t9
_addiu a0,a0,-0x4fe0
lw v0,0xc(s6)
sltu t1,v0,t1
beq t1,zero,0x001195dc
_lw t9,-0x6190(gp)
b 0x0011962c
_addiu t9,t9,0x2f54
lw a2,-0x7e1c(gp)
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,-0x37c8
jalr t9
_addiu a0,a0,-0x4fcc
b 0x00119684
_li a1,0x59c
lw a2,-0x7e1c(gp)
li a1,0x108
lw a0,-0x7fc4(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,-0x3578
jalr t9
_addiu a0,a0,0x46d4
beq v1,zero,0x0011940c
_lw t9,-0x6190(gp)
b 0x0011962c
_addiu t9,t9,0x2f54
lw t9,-0x7ee8(gp)
jalr t9
_nop
(translation_unit "/* WARNING: Type propagation algorithm not settling */\n\nundefined4 *\nFUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)\n\n{\n  int iVar1;\n  uint uVar2;\n  undefined *puVar3;\n  uint *puVar4;\n  uint uVar5;\n  uchar *puVar6;\n  ushort uVar7;\n  undefined *puVar8;\n  int iVar9;\n  uint uVar10;\n  uint uVar11;\n  uint *puVar12;\n  uint extraout_v1;\n  undefined *puVar13;\n  int *piVar14;\n  int iVar15;\n  undefined4 uVar16;\n  undefined4 *puVar17;\n  int iVar18;\n  int iVar19;\n  undefined *in_t1;\n  undefined *puVar20;\n  Stringpool_template *pSVar21;\n  int *piVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  uchar *puVar25;\n  undefined4 *puVar26;\n  Output_section_incremental_inputs<64,false> *unaff_s4;\n  int unaff_s6;\n  code *pcVar27;\n  int *piVar28;\n  \n  piVar28 = *(int **)(param_1 + 0x30);\n  pSVar21 = (Stringpool_template *)piVar28[10];\n  if (-1 < *(int *)(param_1 + 0x20) << 2) goto LAB_00119650;\n  if (-1 < *(int *)(param_1 + 0x20) << 1) goto LAB_00119634;\n  iVar1 = *(int *)(param_1 + 0x10);\n  puVar20 = *(undefined **)(param_1 + 0x14);\n  if (-1 < *(int *)(param_1 + 0x18)) {\n    puVar13 = *(undefined **)(param_2 + 8);\n    puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));\n    in_t1 = *(undefined **)(param_2 + 0xc);\n    if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }\nLAB_00119628:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\nLAB_0011962c:\n  while( true ) {\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }\nLAB_001195dc:\n  puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5);\n  return puVar17;\nLAB_001196a4:\n  iVar9 = 0x108;\n  puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);\n  puVar13 = PTR_LAB_0043220c + 0x46d4;\n  (*(code *)PTR_do_gold_unreachable_004323c4)();\n  uVar10 = extraout_v1;\nLAB_001196c0:\n  if (uVar10 != 0) goto code_r0x001196c8;\n  goto LAB_0011940c;\ncode_r0x001196c8:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  goto LAB_0011962c;\n  while( true ) {\n    uVar2 = piVar22[1];\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    puVar17 = puVar24;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);\n    iVar1 = *piVar28;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }\n    iVar15 = piVar22[6];\n    puVar24 = puVar17 + 6;\n    piVar14 = (int *)puVar26[1];\n    piVar28 = piVar28 + 1;\n    *puVar17 = uVar16;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar22[7];\n    *(ushort *)(puVar17 + 5) = uVar7;\n    puVar17[3] = iVar15;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar15 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar14 == piVar28) {\n      return puVar24;\n    }\n    piVar22 = (int *)*piVar28;\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;\n  }\nLAB_00119868:\n  pcVar27 = *(code **)(puVar20 + 0x318ce8);\n  puVar26 = (undefined4 *)(iVar1 + -0x3578);\n  iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4;\n  (*pcVar27)(iVar1,0x108,puVar26);\n  puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30);\n  if (puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]) {\n    return puVar26;\n  }\n  iVar1 = *(int *)(pcVar27 + 0x318b34);\n  piVar28 = (int *)*puVar17;\n  uVar2 = (**(code **)(*piVar28 + 8))(piVar28);\n  if (uVar2 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x00119950. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return puVar17;\n  }\n  uVar16 = 0x6f2;\n  do {\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar16 = 0x618;\n  } while( true );\nLAB_00119850:\n  iVar1 = iVar1 + -0x3768;\n  (**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);\n  goto LAB_00119868;\n}\n\n" comment (ERROR "undefined4 *\nFUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" (binary_expression "undefined4 *\nFUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" identifier * (call_expression "FUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" identifier (argument_list "(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" ( (binary_expression "Output_section_incremental_inputs<64" identifier < number_literal) , (binary_expression "false> *param_1" false > (pointer_expression "*param_1" * identifier)) , (ERROR "int" identifier) identifier , identifier (ERROR "param_3" identifier) , identifier (ERROR "param_4" identifier) , identifier (ERROR "param_5" identifier) ))))) (compound_statement "{\n  int iVar1;\n  uint uVar2;\n  undefined *puVar3;\n  uint *puVar4;\n  uint uVar5;\n  uchar *puVar6;\n  ushort uVar7;\n  undefined *puVar8;\n  int iVar9;\n  uint uVar10;\n  uint uVar11;\n  uint *puVar12;\n  uint extraout_v1;\n  undefined *puVar13;\n  int *piVar14;\n  int iVar15;\n  undefined4 uVar16;\n  undefined4 *puVar17;\n  int iVar18;\n  int iVar19;\n  undefined *in_t1;\n  undefined *puVar20;\n  Stringpool_template *pSVar21;\n  int *piVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  uchar *puVar25;\n  undefined4 *puVar26;\n  Output_section_incremental_inputs<64,false> *unaff_s4;\n  int unaff_s6;\n  code *pcVar27;\n  int *piVar28;\n  \n  piVar28 = *(int **)(param_1 + 0x30);\n  pSVar21 = (Stringpool_template *)piVar28[10];\n  if (-1 < *(int *)(param_1 + 0x20) << 2) goto LAB_00119650;\n  if (-1 < *(int *)(param_1 + 0x20) << 1) goto LAB_00119634;\n  iVar1 = *(int *)(param_1 + 0x10);\n  puVar20 = *(undefined **)(param_1 + 0x14);\n  if (-1 < *(int *)(param_1 + 0x18)) {\n    puVar13 = *(undefined **)(param_2 + 8);\n    puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));\n    in_t1 = *(undefined **)(param_2 + 0xc);\n    if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }\nLAB_00119628:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\nLAB_0011962c:\n  while( true ) {\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }\nLAB_001195dc:\n  puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5);\n  return puVar17;\nLAB_001196a4:\n  iVar9 = 0x108;\n  puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);\n  puVar13 = PTR_LAB_0043220c + 0x46d4;\n  (*(code *)PTR_do_gold_unreachable_004323c4)();\n  uVar10 = extraout_v1;\nLAB_001196c0:\n  if (uVar10 != 0) goto code_r0x001196c8;\n  goto LAB_0011940c;\ncode_r0x001196c8:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  goto LAB_0011962c;\n  while( true ) {\n    uVar2 = piVar22[1];\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    puVar17 = puVar24;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);\n    iVar1 = *piVar28;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }\n    iVar15 = piVar22[6];\n    puVar24 = puVar17 + 6;\n    piVar14 = (int *)puVar26[1];\n    piVar28 = piVar28 + 1;\n    *puVar17 = uVar16;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar22[7];\n    *(ushort *)(puVar17 + 5) = uVar7;\n    puVar17[3] = iVar15;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar15 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar14 == piVar28) {\n      return puVar24;\n    }\n    piVar22 = (int *)*piVar28;\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;\n  }\nLAB_00119868:\n  pcVar27 = *(code **)(puVar20 + 0x318ce8);\n  puVar26 = (undefined4 *)(iVar1 + -0x3578);\n  iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4;\n  (*pcVar27)(iVar1,0x108,puVar26);\n  puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30);\n  if (puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]) {\n    return puVar26;\n  }\n  iVar1 = *(int *)(pcVar27 + 0x318b34);\n  piVar28 = (int *)*puVar17;\n  uVar2 = (**(code **)(*piVar28 + 8))(piVar28);\n  if (uVar2 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x00119950. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return puVar17;\n  }\n  uVar16 = 0x6f2;\n  do {\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar16 = 0x618;\n  } while( true );\nLAB_00119850:\n  iVar1 = iVar1 + -0x3768;\n  (**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);\n  goto LAB_00119868;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "uint *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "uchar *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "ushort uVar7;" type_identifier identifier ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "uint *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "uint extraout_v1;" type_identifier identifier ;) (declaration "undefined *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "undefined4 uVar16;" type_identifier identifier ;) (declaration "undefined4 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "undefined *in_t1;" type_identifier (pointer_declarator "*in_t1" * identifier) ;) (declaration "undefined *puVar20;" type_identifier (pointer_declarator "*puVar20" * identifier) ;) (declaration "Stringpool_template *pSVar21;" type_identifier (pointer_declarator "*pSVar21" * identifier) ;) (declaration "int *piVar22;" primitive_type (pointer_declarator "*piVar22" * identifier) ;) (declaration "int *piVar23;" primitive_type (pointer_declarator "*piVar23" * identifier) ;) (declaration "undefined4 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "uchar *puVar25;" type_identifier (pointer_declarator "*puVar25" * identifier) ;) (declaration "undefined4 *puVar26;" type_identifier (pointer_declarator "*puVar26" * identifier) ;) (expression_statement "Output_section_incremental_inputs<64,false> *unaff_s4;" (comma_expression "Output_section_incremental_inputs<64,false> *unaff_s4" (binary_expression "Output_section_incremental_inputs<64" identifier < number_literal) , (binary_expression "false> *unaff_s4" false > (pointer_expression "*unaff_s4" * identifier))) ;) (declaration "int unaff_s6;" primitive_type identifier ;) (declaration "code *pcVar27;" type_identifier (pointer_declarator "*pcVar27" * identifier) ;) (declaration "int *piVar28;" primitive_type (pointer_declarator "*piVar28" * identifier) ;) (expression_statement "piVar28 = *(int **)(param_1 + 0x30);" (assignment_expression "piVar28 = *(int **)(param_1 + 0x30)" identifier = (pointer_expression "*(int **)(param_1 + 0x30)" * (cast_expression "(int **)(param_1 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "pSVar21 = (Stringpool_template *)piVar28[10];" (assignment_expression "pSVar21 = (Stringpool_template *)piVar28[10]" identifier = (cast_expression "(Stringpool_template *)piVar28[10]" ( (type_descriptor "Stringpool_template *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar28[10]" identifier [ number_literal ]))) ;) (if_statement "if (-1 < *(int *)(param_1 + 0x20) << 2) goto LAB_00119650;" if (parenthesized_expression "(-1 < *(int *)(param_1 + 0x20) << 2)" ( (binary_expression "-1 < *(int *)(param_1 + 0x20) << 2" number_literal < (binary_expression "*(int *)(param_1 + 0x20) << 2" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119650;" goto statement_identifier ;)) (if_statement "if (-1 < *(int *)(param_1 + 0x20) << 1) goto LAB_00119634;" if (parenthesized_expression "(-1 < *(int *)(param_1 + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(param_1 + 0x20) << 1" number_literal < (binary_expression "*(int *)(param_1 + 0x20) << 1" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119634;" goto statement_identifier ;)) (expression_statement "iVar1 = *(int *)(param_1 + 0x10);" (assignment_expression "iVar1 = *(int *)(param_1 + 0x10)" identifier = (pointer_expression "*(int *)(param_1 + 0x10)" * (cast_expression "(int *)(param_1 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar20 = *(undefined **)(param_1 + 0x14);" (assignment_expression "puVar20 = *(undefined **)(param_1 + 0x14)" identifier = (pointer_expression "*(undefined **)(param_1 + 0x14)" * (cast_expression "(undefined **)(param_1 + 0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (-1 < *(int *)(param_1 + 0x18)) {\n    puVar13 = *(undefined **)(param_2 + 8);\n    puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));\n    in_t1 = *(undefined **)(param_2 + 0xc);\n    if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }" if (parenthesized_expression "(-1 < *(int *)(param_1 + 0x18))" ( (binary_expression "-1 < *(int *)(param_1 + 0x18)" number_literal < (pointer_expression "*(int *)(param_1 + 0x18)" * (cast_expression "(int *)(param_1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n    puVar13 = *(undefined **)(param_2 + 8);\n    puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));\n    in_t1 = *(undefined **)(param_2 + 0xc);\n    if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }" { (expression_statement "puVar13 = *(undefined **)(param_2 + 8);" (assignment_expression "puVar13 = *(undefined **)(param_2 + 8)" identifier = (pointer_expression "*(undefined **)(param_2 + 8)" * (cast_expression "(undefined **)(param_2 + 8)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) ))))) ;) (expression_statement "puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));" (assignment_expression "puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18))" identifier = (cast_expression "(undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18))" ( (binary_expression "(uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18)" (call_expression "(uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar20 + *(int *)(param_1 + 0x1c) < puVar20)" ( (binary_expression "puVar20 + *(int *)(param_1 + 0x1c) < puVar20" (binary_expression "puVar20 + *(int *)(param_1 + 0x1c)" identifier + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) < identifier) ))) + (pointer_expression "*(int *)(param_1 + 0x18)" * (cast_expression "(int *)(param_1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) ))))) )))) ;) (expression_statement "in_t1 = *(undefined **)(param_2 + 0xc);" (assignment_expression "in_t1 = *(undefined **)(param_2 + 0xc)" identifier = (pointer_expression "*(undefined **)(param_2 + 0xc)" * (cast_expression "(undefined **)(param_2 + 0xc)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }" if (parenthesized_expression "(((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1))))" ( (binary_expression "((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))" (parenthesized_expression "((int)puVar8 <= (int)puVar13)" ( (binary_expression "(int)puVar8 <= (int)puVar13" (cast_expression "(int)puVar8" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))" ( (parenthesized_expression "(puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1))" ( (binary_expression "puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)" (binary_expression "puVar8 != puVar13" identifier != identifier) || (parenthesized_expression "(puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)" ( (binary_expression "puVar20 + *(int *)(param_1 + 0x1c) <= in_t1" (binary_expression "puVar20 + *(int *)(param_1 + 0x1c)" identifier + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) <= identifier) ))) )) ))) )) (compound_statement "{\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }" { (expression_statement "iVar9 = piVar28[0xe];" (assignment_expression "iVar9 = piVar28[0xe]" identifier = (subscript_expression "piVar28[0xe]" identifier [ number_literal ])) ;) (expression_statement "piVar22 = *(int **)(param_2 + 0x10);" (assignment_expression "piVar22 = *(int **)(param_2 + 0x10)" identifier = (pointer_expression "*(int **)(param_2 + 0x10)" * (cast_expression "(int **)(param_2 + 0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));" (assignment_expression "puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c))" identifier = (cast_expression "(uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c))" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar22 + *(int *)(param_1 + 0x1c))" ( (binary_expression "(int)piVar22 + *(int *)(param_1 + 0x1c)" (cast_expression "(int)piVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) )))) ;) (expression_statement "unaff_s4 = param_1;" (assignment_expression "unaff_s4 = param_1" identifier = identifier) ;) (expression_statement "unaff_s6 = param_2;" (assignment_expression "unaff_s6 = param_2" identifier = identifier) ;) (if_statement "if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;" if (parenthesized_expression "(-1 < *(int *)(iVar9 + 0x20) << 2)" ( (binary_expression "-1 < *(int *)(iVar9 + 0x20) << 2" number_literal < (binary_expression "*(int *)(iVar9 + 0x20) << 2" (pointer_expression "*(int *)(iVar9 + 0x20)" * (cast_expression "(int *)(iVar9 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x20)" ( (binary_expression "iVar9 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119650;" goto statement_identifier ;)) (expression_statement "iVar19 = *(int *)(iVar9 + 0x18);" (assignment_expression "iVar19 = *(int *)(iVar9 + 0x18)" identifier = (pointer_expression "*(int *)(iVar9 + 0x18)" * (cast_expression "(int *)(iVar9 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "puVar17 = *(undefined4 **)(iVar9 + 0x1c);" (assignment_expression "puVar17 = *(undefined4 **)(iVar9 + 0x1c)" identifier = (pointer_expression "*(undefined4 **)(iVar9 + 0x1c)" * (cast_expression "(undefined4 **)(iVar9 + 0x1c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x1c)" ( (binary_expression "iVar9 + 0x1c" identifier + number_literal) ))))) ;) (if_statement "if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;" if (parenthesized_expression "(-1 < *(int *)(iVar9 + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(iVar9 + 0x20) << 1" number_literal < (binary_expression "*(int *)(iVar9 + 0x20) << 1" (pointer_expression "*(int *)(iVar9 + 0x20)" * (cast_expression "(int *)(iVar9 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x20)" ( (binary_expression "iVar9 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119634;" goto statement_identifier ;)) (expression_statement "uVar2 = *(uint *)(iVar9 + 0x10);" (assignment_expression "uVar2 = *(uint *)(iVar9 + 0x10)" identifier = (pointer_expression "*(uint *)(iVar9 + 0x10)" * (cast_expression "(uint *)(iVar9 + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x10)" ( (binary_expression "iVar9 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar8 = *(undefined **)(iVar9 + 0x14);" (assignment_expression "puVar8 = *(undefined **)(iVar9 + 0x14)" identifier = (pointer_expression "*(undefined **)(iVar9 + 0x14)" * (cast_expression "(undefined **)(iVar9 + 0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x14)" ( (binary_expression "iVar9 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }" if (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) (compound_statement "{\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }" { (expression_statement "puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);" (assignment_expression "puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19)" identifier = (cast_expression "(undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19)" ( (binary_expression "(uint)(puVar8 + (int)puVar17 < puVar8) + iVar19" (call_expression "(uint)(puVar8 + (int)puVar17 < puVar8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar8 + (int)puVar17 < puVar8)" ( (binary_expression "puVar8 + (int)puVar17 < puVar8" (binary_expression "puVar8 + (int)puVar17" identifier + (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier)) < identifier) ))) + identifier) )))) ;) (if_statement "if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }" if (parenthesized_expression "((int)puVar3 <= (int)puVar13)" ( (binary_expression "(int)puVar3 <= (int)puVar13" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }" { (expression_statement "uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);" (assignment_expression "uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17)" identifier = (call_expression "(uint)(in_t1 < puVar8 + (int)puVar17)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(in_t1 < puVar8 + (int)puVar17)" ( (binary_expression "in_t1 < puVar8 + (int)puVar17" identifier < (binary_expression "puVar8 + (int)puVar17" identifier + (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier))) )))) ;) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" identifier = number_literal) ;) (if_statement "if (puVar3 == puVar13) goto LAB_001196c0;" if (parenthesized_expression "(puVar3 == puVar13)" ( (binary_expression "puVar3 == puVar13" identifier == identifier) )) (goto_statement "goto LAB_001196c0;" goto statement_identifier ;)) (labeled_statement "LAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);" statement_identifier : (expression_statement "uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);" (assignment_expression "uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10)" identifier = (pointer_expression "*(uint *)(*(int *)(param_1 + 0x34) + 0x10)" * (cast_expression "(uint *)(*(int *)(param_1 + 0x34) + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x34) + 0x10)" ( (binary_expression "*(int *)(param_1 + 0x34) + 0x10" (pointer_expression "*(int *)(param_1 + 0x34)" * (cast_expression "(int *)(param_1 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34)" ( (binary_expression "param_1 + 0x34" identifier + number_literal) )))) + number_literal) ))))) ;)) (expression_statement "piVar22 = (int *)((int)piVar22 + (int)puVar17);" (assignment_expression "piVar22 = (int *)((int)piVar22 + (int)puVar17)" identifier = (cast_expression "(int *)((int)piVar22 + (int)puVar17)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar22 + (int)puVar17)" ( (binary_expression "(int)piVar22 + (int)puVar17" (cast_expression "(int)piVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (if_statement "if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }" if (parenthesized_expression "(uVar10 < 0x20000000)" ( (binary_expression "uVar10 < 0x20000000" identifier < number_literal) )) (compound_statement "{\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }" { (expression_statement "puVar13 = (undefined *)(uVar10 << 2);" (assignment_expression "puVar13 = (undefined *)(uVar10 << 2)" identifier = (cast_expression "(undefined *)(uVar10 << 2)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar10 << 2)" ( (binary_expression "uVar10 << 2" identifier << number_literal) )))) ;) (expression_statement "puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);" (assignment_expression "puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13)" identifier = (cast_expression "(uint *)(*(code *)PTR_operator_new___004322dc)(puVar13)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_operator_new___004322dc)(puVar13)" (parenthesized_expression "(*(code *)PTR_operator_new___004322dc)" ( (pointer_expression "*(code *)PTR_operator_new___004322dc" * (cast_expression "(code *)PTR_operator_new___004322dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar13)" ( identifier ))))) ;) (expression_statement "(*(code *)PTR_memset_00436850)(puVar4,0,puVar13);" (call_expression "(*(code *)PTR_memset_00436850)(puVar4,0,puVar13)" (parenthesized_expression "(*(code *)PTR_memset_00436850)" ( (pointer_expression "*(code *)PTR_memset_00436850" * (cast_expression "(code *)PTR_memset_00436850" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar4,0,puVar13)" ( identifier , number_literal , identifier ))) ;) (expression_statement "uVar5 = piVar28[1] - *piVar28 >> 2;" (assignment_expression "uVar5 = piVar28[1] - *piVar28 >> 2" identifier = (binary_expression "piVar28[1] - *piVar28 >> 2" (binary_expression "piVar28[1] - *piVar28" (subscript_expression "piVar28[1]" identifier [ number_literal ]) - (pointer_expression "*piVar28" * identifier)) >> number_literal)) ;) (if_statement "if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;" if (parenthesized_expression "(*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9])" ( (binary_expression "*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]" (pointer_expression "*(uint *)(pSVar21 + 0x28)" * (cast_expression "(uint *)(pSVar21 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pSVar21 + 0x28)" ( (binary_expression "pSVar21 + 0x28" identifier + number_literal) )))) < (cast_expression "(uint)piVar28[9]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "piVar28[9]" identifier [ number_literal ]))) )) (goto_statement "goto LAB_001196a4;" goto statement_identifier ;)) (expression_statement "uVar11 = piVar28[9] - 1;" (assignment_expression "uVar11 = piVar28[9] - 1" identifier = (binary_expression "piVar28[9] - 1" (subscript_expression "piVar28[9]" identifier [ number_literal ]) - number_literal)) ;) (expression_statement "uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);" (assignment_expression "uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" identifier = (pointer_expression "*(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" * (cast_expression "(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" ( (binary_expression "*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4" (pointer_expression "*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc)" * (cast_expression "(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc)" ( (binary_expression "*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc" (pointer_expression "*(int *)(pSVar21 + 0x1c)" * (cast_expression "(int *)(pSVar21 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pSVar21 + 0x1c)" ( (binary_expression "pSVar21 + 0x1c" identifier + number_literal) )))) + (binary_expression "(uVar11 >> 0xd) * 0xc" (parenthesized_expression "(uVar11 >> 0xd)" ( (binary_expression "uVar11 >> 0xd" identifier >> number_literal) )) * number_literal)) )))) + (binary_expression "(uVar11 & 0x1fff) * 4" (parenthesized_expression "(uVar11 & 0x1fff)" ( (binary_expression "uVar11 & 0x1fff" identifier & number_literal) )) * number_literal)) ))))) ;) (expression_statement "*(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "*(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (pointer_expression "*(uint *)(puVar25 + 4)" * (cast_expression "(uint *)(puVar25 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar25 + 4)" ( (binary_expression "puVar25 + 4" identifier + number_literal) )))) = (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "puVar25[0] = '\x02';" (assignment_expression "puVar25[0] = '\x02'" (subscript_expression "puVar25[0]" identifier [ number_literal ]) = (char_literal "'\x02'" ' escape_sequence ')) ;) (expression_statement "puVar25[1] = '\0';" (assignment_expression "puVar25[1] = '\0'" (subscript_expression "puVar25[1]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[2] = '\0';" (assignment_expression "puVar25[2] = '\0'" (subscript_expression "puVar25[2]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[3] = '\0';" (assignment_expression "puVar25[3] = '\0'" (subscript_expression "puVar25[3]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[0xc] = '\0';" (assignment_expression "puVar25[0xc] = '\0'" (subscript_expression "puVar25[0xc]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[0xd] = '\0';" (assignment_expression "puVar25[0xd] = '\0'" (subscript_expression "puVar25[0xd]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[0xe] = '\0';" (assignment_expression "puVar25[0xe] = '\0'" (subscript_expression "puVar25[0xe]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[0xf] = '\0';" (assignment_expression "puVar25[0xf] = '\0'" (subscript_expression "puVar25[0xf]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "*(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;" (assignment_expression "*(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000" (pointer_expression "*(uint *)(puVar25 + 8)" * (cast_expression "(uint *)(puVar25 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar25 + 8)" ( (binary_expression "puVar25 + 8" identifier + number_literal) )))) = (binary_expression "(((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10)" ( (binary_expression "(uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10" (binary_expression "(uVar11 >> 0x10) << 0x18" (parenthesized_expression "(uVar11 >> 0x10)" ( (binary_expression "uVar11 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar11 >> 0x18) << 0x10" (parenthesized_expression "(uVar11 >> 0x18)" ( (binary_expression "uVar11 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff)" ( (binary_expression "(uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff" (binary_expression "(uVar11 & 0xff) << 8" (parenthesized_expression "(uVar11 & 0xff)" ( (binary_expression "uVar11 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar11 >> 8 & 0xff" (binary_expression "uVar11 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (ERROR "puVar6 = (uchar *)gold::" (assignment_expression "puVar6 = (uchar *)gold" identifier = (cast_expression "(uchar *)gold" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) : :) (expression_statement "Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);" (comma_expression "Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21)" (binary_expression "Output_section_incremental_inputs<64" identifier < number_literal) , (binary_expression "false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21)" false > (ERROR "::" : :) (call_expression "write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21)" identifier (argument_list "(param_1,puVar25,puVar25 + 0x10,pSVar21)" ( identifier , identifier , (binary_expression "puVar25 + 0x10" identifier + number_literal) , identifier ))))) ;) (ERROR "iVar9 = gold::" (assignment_expression "iVar9 = gold" identifier = identifier) : :) (expression_statement "Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);" (comma_expression "Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" (binary_expression "Output_section_incremental_inputs<64" identifier < number_literal) , (binary_expression "false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" false > (ERROR "::" : :) (call_expression "write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" identifier (argument_list "(param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" ( identifier , identifier , identifier , identifier , identifier , identifier ))))) ;) (if_statement "if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;" if (parenthesized_expression "(iVar9 - (int)puVar25 >> 0x1f != iVar1)" ( (binary_expression "iVar9 - (int)puVar25 >> 0x1f != iVar1" (binary_expression "iVar9 - (int)puVar25 >> 0x1f" (binary_expression "iVar9 - (int)puVar25" identifier - (cast_expression "(int)puVar25" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal) != identifier) )) (goto_statement "goto LAB_0011969c;" goto statement_identifier ;)) (if_statement "if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;" if (parenthesized_expression "((undefined *)(iVar9 - (int)puVar25) != puVar20)" ( (binary_expression "(undefined *)(iVar9 - (int)puVar25) != puVar20" (cast_expression "(undefined *)(iVar9 - (int)puVar25)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 - (int)puVar25)" ( (binary_expression "iVar9 - (int)puVar25" identifier - (cast_expression "(int)puVar25" ( (type_descriptor "int" primitive_type) ) identifier)) ))) != identifier) )) (goto_statement "goto LAB_0011969c;" goto statement_identifier ;)) (expression_statement "uVar16 = 0x59f;" (assignment_expression "uVar16 = 0x59f" identifier = number_literal) ;) (if_statement "if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }" if (parenthesized_expression "((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8))" ( (binary_expression "(uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)" (parenthesized_expression "(uVar10 >> 0x1e != uVar2)" ( (binary_expression "uVar10 >> 0x1e != uVar2" (binary_expression "uVar10 >> 0x1e" identifier >> number_literal) != identifier) )) || (parenthesized_expression "(puVar13 != puVar8)" ( (binary_expression "puVar13 != puVar8" identifier != identifier) ))) )) (compound_statement "{\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }" { (do_statement "do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );" do (compound_statement "{\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              }" { (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fcc" identifier + number_literal) , identifier , (binary_expression "PTR_s_alize_xindex_004323b4 + -0x37c8" identifier + number_literal) ))) ;) (labeled_statement "LAB_0011969c:\n                uVar16 = 0x59c;" statement_identifier : (expression_statement "uVar16 = 0x59c;" (assignment_expression "uVar16 = 0x59c" identifier = number_literal) ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "piVar14 = (int *)((int)piVar22 + (int)puVar8);" (assignment_expression "piVar14 = (int *)((int)piVar22 + (int)puVar8)" identifier = (cast_expression "(int *)((int)piVar22 + (int)puVar8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar22 + (int)puVar8)" ( (binary_expression "(int)piVar22 + (int)puVar8" (cast_expression "(int)piVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "puVar12 = puVar4;" (assignment_expression "puVar12 = puVar4" identifier = identifier) ;) (if_statement "if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }" if (parenthesized_expression "(uVar10 != 0)" ( (binary_expression "uVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }" { (do_statement "do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);" do (compound_statement "{\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              }" { (expression_statement "uVar2 = *puVar12;" (assignment_expression "uVar2 = *puVar12" identifier = (pointer_expression "*puVar12" * identifier)) ;) (expression_statement "piVar23 = piVar22 + 1;" (assignment_expression "piVar23 = piVar22 + 1" identifier = (binary_expression "piVar22 + 1" identifier + number_literal)) ;) (expression_statement "*piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "*piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (pointer_expression "*piVar22" * identifier) = (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" ( (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" ( (binary_expression "uVar2 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" ( (binary_expression "uVar2 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" ( (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" ( (binary_expression "uVar2 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "puVar12 = puVar12 + 1;" (assignment_expression "puVar12 = puVar12 + 1" identifier = (binary_expression "puVar12 + 1" identifier + number_literal)) ;) (expression_statement "piVar22 = piVar23;" (assignment_expression "piVar22 = piVar23" identifier = identifier) ;) }) while (parenthesized_expression "(piVar23 != piVar14)" ( (binary_expression "piVar23 != piVar14" identifier != identifier) )) ;) })) (expression_statement "(*(code *)PTR_operator_delete___004323dc)(puVar4);" (call_expression "(*(code *)PTR_operator_delete___004323dc)(puVar4)" (parenthesized_expression "(*(code *)PTR_operator_delete___004323dc)" ( (pointer_expression "*(code *)PTR_operator_delete___004323dc" * (cast_expression "(code *)PTR_operator_delete___004323dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar4)" ( identifier ))) ;) (expression_statement "iVar1 = piVar28[0x10];" (assignment_expression "iVar1 = piVar28[0x10]" identifier = (subscript_expression "piVar28[0x10]" identifier [ number_literal ])) ;) (if_statement "if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;" if (parenthesized_expression "(-1 < *(int *)(iVar1 + 0x20) << 2)" ( (binary_expression "-1 < *(int *)(iVar1 + 0x20) << 2" number_literal < (binary_expression "*(int *)(iVar1 + 0x20) << 2" (pointer_expression "*(int *)(iVar1 + 0x20)" * (cast_expression "(int *)(iVar1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x20)" ( (binary_expression "iVar1 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119650;" goto statement_identifier ;)) (if_statement "if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;" if (parenthesized_expression "(-1 < *(int *)(iVar1 + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(iVar1 + 0x20) << 1" number_literal < (binary_expression "*(int *)(iVar1 + 0x20) << 1" (pointer_expression "*(int *)(iVar1 + 0x20)" * (cast_expression "(int *)(iVar1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x20)" ( (binary_expression "iVar1 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119634;" goto statement_identifier ;)) (if_statement "if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }" if (parenthesized_expression "(-1 < *(int *)(iVar1 + 0x18))" ( (binary_expression "-1 < *(int *)(iVar1 + 0x18)" number_literal < (pointer_expression "*(int *)(iVar1 + 0x18)" * (cast_expression "(int *)(iVar1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x18)" ( (binary_expression "iVar1 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }" { (expression_statement "in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);" (assignment_expression "in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c)" identifier = (binary_expression "*(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c)" (pointer_expression "*(undefined **)(iVar1 + 0x14)" * (cast_expression "(undefined **)(iVar1 + 0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))) + (pointer_expression "*(int *)(iVar1 + 0x1c)" * (cast_expression "(int *)(iVar1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1c)" ( (binary_expression "iVar1 + 0x1c" identifier + number_literal) )))))) ;) (expression_statement "iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);" (assignment_expression "iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18)" identifier = (binary_expression "(uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18)" (call_expression "(uint)(in_t1 < *(undefined **)(iVar1 + 0x14))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(in_t1 < *(undefined **)(iVar1 + 0x14))" ( (binary_expression "in_t1 < *(undefined **)(iVar1 + 0x14)" identifier < (pointer_expression "*(undefined **)(iVar1 + 0x14)" * (cast_expression "(undefined **)(iVar1 + 0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) ))))) ))) + (pointer_expression "*(int *)(iVar1 + 0x18)" * (cast_expression "(int *)(iVar1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x18)" ( (binary_expression "iVar1 + 0x18" identifier + number_literal) )))))) ;) (if_statement "if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }" if (parenthesized_expression "(iVar1 <= *(int *)(param_2 + 8))" ( (binary_expression "iVar1 <= *(int *)(param_2 + 8)" identifier <= (pointer_expression "*(int *)(param_2 + 8)" * (cast_expression "(int *)(param_2 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) ))))) )) (compound_statement "{\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }" { (if_statement "if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;" if (parenthesized_expression "(*(int *)(param_2 + 8) == iVar1)" ( (binary_expression "*(int *)(param_2 + 8) == iVar1" (pointer_expression "*(int *)(param_2 + 8)" * (cast_expression "(int *)(param_2 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) == identifier) )) (goto_statement "goto LAB_0011966c;" goto statement_identifier ;)) (goto_statement "goto LAB_001195dc;" goto statement_identifier ;) })) })) (goto_statement "goto LAB_00119628;" goto statement_identifier ;) })) (expression_statement "puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;" (assignment_expression "puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8" identifier = identifier) ;) (expression_statement "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();" (call_expression "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)()" (parenthesized_expression "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)" ( (pointer_expression "*(code *)PTR___cxa_throw_bad_array_new_length_004322e8" * (cast_expression "(code *)PTR___cxa_throw_bad_array_new_length_004322e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puVar26 = *(undefined4 **)(puVar13 + 0x30);" (assignment_expression "puVar26 = *(undefined4 **)(puVar13 + 0x30)" identifier = (pointer_expression "*(undefined4 **)(puVar13 + 0x30)" * (cast_expression "(undefined4 **)(puVar13 + 0x30)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x30)" ( (binary_expression "puVar13 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "piVar28 = (int *)*puVar26;" (assignment_expression "piVar28 = (int *)*puVar26" identifier = (cast_expression "(int *)*puVar26" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar26" * identifier))) ;) (if_statement "if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }" if (parenthesized_expression "(piVar28 == (int *)puVar26[1])" ( (binary_expression "piVar28 == (int *)puVar26[1]" identifier == (cast_expression "(int *)puVar26[1]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar26[1]" identifier [ number_literal ]))) )) (compound_statement "{\n            return puVar17;\n          }" { (return_statement "return puVar17;" return identifier ;) })) (expression_statement "piVar22 = (int *)*piVar28;" (assignment_expression "piVar22 = (int *)*piVar28" identifier = (cast_expression "(int *)*piVar28" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar28" * identifier))) ;) (if_statement "if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }" if (parenthesized_expression "((int)puVar17 - iVar9 != piVar22[3])" ( (binary_expression "(int)puVar17 - iVar9 != piVar22[3]" (binary_expression "(int)puVar17 - iVar9" (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier) - identifier) != (subscript_expression "piVar22[3]" identifier [ number_literal ])) )) (compound_statement "{\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }" { (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar20 + 0x318cd8)" * (cast_expression "(int *)(puVar20 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318cd8)" ( (binary_expression "puVar20 + 0x318cd8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00119850;" goto statement_identifier ;) })) (expression_statement "uVar2 = piVar22[1];" (assignment_expression "uVar2 = piVar22[1]" identifier = (subscript_expression "piVar22[1]" identifier [ number_literal ])) ;) (if_statement "if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;" if (parenthesized_expression "(uVar2 <= *(uint *)(iVar19 + 0x28))" ( (binary_expression "uVar2 <= *(uint *)(iVar19 + 0x28)" identifier <= (pointer_expression "*(uint *)(iVar19 + 0x28)" * (cast_expression "(uint *)(iVar19 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x28)" ( (binary_expression "iVar19 + 0x28" identifier + number_literal) ))))) )) (goto_statement "goto LAB_0011977c;" goto statement_identifier ;)) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar20 + 0x318cd8)" * (cast_expression "(int *)(puVar20 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318cd8)" ( (binary_expression "puVar20 + 0x318cd8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00119868;" goto statement_identifier ;) })) })) })) })) (labeled_statement "LAB_00119628:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" statement_identifier : (expression_statement "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54)" identifier = (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" ( (binary_expression "PTR_LAB_00434040 + 0x2f54" identifier + number_literal) )))) ;)) (labeled_statement "LAB_0011962c:\n  while( true ) {\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" statement_identifier : (while_statement "while( true ) {\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" { (expression_statement "(*pcVar27)();" (call_expression "(*pcVar27)()" (parenthesized_expression "(*pcVar27)" ( (pointer_expression "*pcVar27" * identifier) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);" statement_identifier : (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + -0x36c8" identifier + number_literal) ))) ;)) (expression_statement "unaff_s4 = param_1;" (assignment_expression "unaff_s4 = param_1" identifier = identifier) ;) (expression_statement "unaff_s6 = param_2;" (assignment_expression "unaff_s6 = param_2" identifier = identifier) ;) (labeled_statement "LAB_00119650:\n    param_2 = unaff_s6;" statement_identifier : (expression_statement "param_2 = unaff_s6;" (assignment_expression "param_2 = unaff_s6" identifier = identifier) ;)) (expression_statement "param_1 = unaff_s4;" (assignment_expression "param_1 = unaff_s4" identifier = identifier) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + -0x36bc" identifier + number_literal) ))) ;) (labeled_statement "LAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);" statement_identifier : (expression_statement "in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);" (assignment_expression "in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1)" identifier = (cast_expression "(undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(uint)(*(undefined **)(param_2 + 0xc) < in_t1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(undefined **)(param_2 + 0xc) < in_t1)" ( (binary_expression "*(undefined **)(param_2 + 0xc) < in_t1" (pointer_expression "*(undefined **)(param_2 + 0xc)" * (cast_expression "(undefined **)(param_2 + 0xc)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) < identifier) ))))) ;)) (if_statement "if (in_t1 == (undefined *)0x0) break;" if (parenthesized_expression "(in_t1 == (undefined *)0x0)" ( (binary_expression "in_t1 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54)" identifier = (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" ( (binary_expression "PTR_LAB_00434040 + 0x2f54" identifier + number_literal) )))) ;) }))) (labeled_statement "LAB_001195dc:\n  puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5);" statement_identifier : (expression_statement "puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5);" (comma_expression "puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5)" (binary_expression "puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64" (assignment_expression "puVar17 = (undefined4 *)\n            gold" identifier = (cast_expression "(undefined4 *)\n            gold" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) (ERROR "::Output_section_incremental_inputs" : : identifier) < number_literal) , (binary_expression "false>::write_got_plt\n                      ((uchar *)param_1,param_5)" false > (ERROR "::" : :) (call_expression "write_got_plt\n                      ((uchar *)param_1,param_5)" identifier (argument_list "((uchar *)param_1,param_5)" ( (cast_expression "(uchar *)param_1" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))))) ;)) (return_statement "return puVar17;" return identifier ;) (labeled_statement "LAB_001196a4:\n  iVar9 = 0x108;" statement_identifier : (expression_statement "iVar9 = 0x108;" (assignment_expression "iVar9 = 0x108" identifier = number_literal) ;)) (expression_statement "puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);" (assignment_expression "puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578)" identifier = (cast_expression "(undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_alize_xindex_004323b4 + -0x3578)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x3578" identifier + number_literal) )))) ;) (expression_statement "puVar13 = PTR_LAB_0043220c + 0x46d4;" (assignment_expression "puVar13 = PTR_LAB_0043220c + 0x46d4" identifier = (binary_expression "PTR_LAB_0043220c + 0x46d4" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)();" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)()" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "uVar10 = extraout_v1;" (assignment_expression "uVar10 = extraout_v1" identifier = identifier) ;) (labeled_statement "LAB_001196c0:\n  if (uVar10 != 0) goto code_r0x001196c8;" statement_identifier : (if_statement "if (uVar10 != 0) goto code_r0x001196c8;" if (parenthesized_expression "(uVar10 != 0)" ( (binary_expression "uVar10 != 0" identifier != number_literal) )) (goto_statement "goto code_r0x001196c8;" goto statement_identifier ;))) (goto_statement "goto LAB_0011940c;" goto statement_identifier ;) (labeled_statement "code_r0x001196c8:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" statement_identifier : (expression_statement "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54)" identifier = (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" ( (binary_expression "PTR_LAB_00434040 + 0x2f54" identifier + number_literal) )))) ;)) (goto_statement "goto LAB_0011962c;" goto statement_identifier ;) (while_statement "while( true ) {\n    uVar2 = piVar22[1];\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    puVar17 = puVar24;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);\n    iVar1 = *piVar28;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }\n    iVar15 = piVar22[6];\n    puVar24 = puVar17 + 6;\n    piVar14 = (int *)puVar26[1];\n    piVar28 = piVar28 + 1;\n    *puVar17 = uVar16;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar22[7];\n    *(ushort *)(puVar17 + 5) = uVar7;\n    puVar17[3] = iVar15;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar15 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar14 == piVar28) {\n      return puVar24;\n    }\n    piVar22 = (int *)*piVar28;\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    uVar2 = piVar22[1];\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    puVar17 = puVar24;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);\n    iVar1 = *piVar28;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }\n    iVar15 = piVar22[6];\n    puVar24 = puVar17 + 6;\n    piVar14 = (int *)puVar26[1];\n    piVar28 = piVar28 + 1;\n    *puVar17 = uVar16;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar22[7];\n    *(ushort *)(puVar17 + 5) = uVar7;\n    puVar17[3] = iVar15;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar15 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar14 == piVar28) {\n      return puVar24;\n    }\n    piVar22 = (int *)*piVar28;\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;\n  }" { (expression_statement "uVar2 = piVar22[1];" (assignment_expression "uVar2 = piVar22[1]" identifier = (subscript_expression "piVar22[1]" identifier [ number_literal ])) ;) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar20 + 0x318cd8)" * (cast_expression "(int *)(puVar20 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318cd8)" ( (binary_expression "puVar20 + 0x318cd8" identifier + number_literal) ))))) ;) (expression_statement "puVar17 = puVar24;" (assignment_expression "puVar17 = puVar24" identifier = identifier) ;) (if_statement "if (*(uint *)(iVar19 + 0x28) < uVar2) break;" if (parenthesized_expression "(*(uint *)(iVar19 + 0x28) < uVar2)" ( (binary_expression "*(uint *)(iVar19 + 0x28) < uVar2" (pointer_expression "*(uint *)(iVar19 + 0x28)" * (cast_expression "(uint *)(iVar19 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x28)" ( (binary_expression "iVar19 + 0x28" identifier + number_literal) )))) < identifier) )) (break_statement "break;" break ;)) (labeled_statement "LAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);" statement_identifier : (expression_statement "uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);" (assignment_expression "uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" identifier = (pointer_expression "*(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" * (cast_expression "(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" ( (binary_expression "*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4" (pointer_expression "*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" * (cast_expression "(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" ( (binary_expression "*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc" (pointer_expression "*(int *)(iVar19 + 0x1c)" * (cast_expression "(int *)(iVar19 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x1c)" ( (binary_expression "iVar19 + 0x1c" identifier + number_literal) )))) + (binary_expression "(uVar2 - 1 >> 0xd) * 0xc" (parenthesized_expression "(uVar2 - 1 >> 0xd)" ( (binary_expression "uVar2 - 1 >> 0xd" (binary_expression "uVar2 - 1" identifier - number_literal) >> number_literal) )) * number_literal)) )))) + (binary_expression "(uVar2 - 1 & 0x1fff) * 4" (parenthesized_expression "(uVar2 - 1 & 0x1fff)" ( (binary_expression "uVar2 - 1 & 0x1fff" (binary_expression "uVar2 - 1" identifier - number_literal) & number_literal) )) * number_literal)) ))))) ;)) (expression_statement "uVar7 = (**(code **)(*piVar22 + 8))(piVar22);" (assignment_expression "uVar7 = (**(code **)(*piVar22 + 8))(piVar22)" identifier = (call_expression "(**(code **)(*piVar22 + 8))(piVar22)" (parenthesized_expression "(**(code **)(*piVar22 + 8))" ( (pointer_expression "**(code **)(*piVar22 + 8)" * (pointer_expression "*(code **)(*piVar22 + 8)" * (cast_expression "(code **)(*piVar22 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar22 + 8)" ( (binary_expression "*piVar22 + 8" (pointer_expression "*piVar22" * identifier) + number_literal) ))))) )) (argument_list "(piVar22)" ( identifier )))) ;) (expression_statement "iVar1 = *piVar28;" (assignment_expression "iVar1 = *piVar28" identifier = (pointer_expression "*piVar28" * identifier)) ;) (if_statement "if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }" if (parenthesized_expression "(*(char *)(iVar1 + 0x20) != '\0')" ( (binary_expression "*(char *)(iVar1 + 0x20) != '\0'" (pointer_expression "*(char *)(iVar1 + 0x20)" * (cast_expression "(char *)(iVar1 + 0x20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x20)" ( (binary_expression "iVar1 + 0x20" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      uVar7 = uVar7 | 0x8000;\n    }" { (expression_statement "uVar7 = uVar7 | 0x8000;" (assignment_expression "uVar7 = uVar7 | 0x8000" identifier = (binary_expression "uVar7 | 0x8000" identifier | number_literal)) ;) })) (if_statement "if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }" if (parenthesized_expression "(*(char *)(iVar1 + 0x21) != '\0')" ( (binary_expression "*(char *)(iVar1 + 0x21) != '\0'" (pointer_expression "*(char *)(iVar1 + 0x21)" * (cast_expression "(char *)(iVar1 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x21)" ( (binary_expression "iVar1 + 0x21" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      uVar7 = uVar7 | 0x4000;\n    }" { (expression_statement "uVar7 = uVar7 | 0x4000;" (assignment_expression "uVar7 = uVar7 | 0x4000" identifier = (binary_expression "uVar7 | 0x4000" identifier | number_literal)) ;) })) (expression_statement "iVar15 = piVar22[6];" (assignment_expression "iVar15 = piVar22[6]" identifier = (subscript_expression "piVar22[6]" identifier [ number_literal ])) ;) (expression_statement "puVar24 = puVar17 + 6;" (assignment_expression "puVar24 = puVar17 + 6" identifier = (binary_expression "puVar17 + 6" identifier + number_literal)) ;) (expression_statement "piVar14 = (int *)puVar26[1];" (assignment_expression "piVar14 = (int *)puVar26[1]" identifier = (cast_expression "(int *)puVar26[1]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar26[1]" identifier [ number_literal ]))) ;) (expression_statement "piVar28 = piVar28 + 1;" (assignment_expression "piVar28 = piVar28 + 1" identifier = (binary_expression "piVar28 + 1" identifier + number_literal)) ;) (expression_statement "*puVar17 = uVar16;" (assignment_expression "*puVar17 = uVar16" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "puVar17[1] = *(undefined4 *)(iVar1 + 0x10);" (assignment_expression "puVar17[1] = *(undefined4 *)(iVar1 + 0x10)" (subscript_expression "puVar17[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined4 *)(iVar1 + 0x10)" * (cast_expression "(undefined4 *)(iVar1 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x10)" ( (binary_expression "iVar1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "iVar18 = piVar22[7];" (assignment_expression "iVar18 = piVar22[7]" identifier = (subscript_expression "piVar22[7]" identifier [ number_literal ])) ;) (expression_statement "*(ushort *)(puVar17 + 5) = uVar7;" (assignment_expression "*(ushort *)(puVar17 + 5) = uVar7" (pointer_expression "*(ushort *)(puVar17 + 5)" * (cast_expression "(ushort *)(puVar17 + 5)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 5)" ( (binary_expression "puVar17 + 5" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar17[3] = iVar15;" (assignment_expression "puVar17[3] = iVar15" (subscript_expression "puVar17[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar17[4] = iVar18;" (assignment_expression "puVar17[4] = iVar18" (subscript_expression "puVar17[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar17[2] = iVar15 >> 0x1f;" (assignment_expression "puVar17[2] = iVar15 >> 0x1f" (subscript_expression "puVar17[2]" identifier [ number_literal ]) = (binary_expression "iVar15 >> 0x1f" identifier >> number_literal)) ;) (expression_statement "*(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);" (assignment_expression "*(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14)" (pointer_expression "*(short *)((int)puVar17 + 0x16)" * (cast_expression "(short *)((int)puVar17 + 0x16)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar17 + 0x16)" ( (binary_expression "(int)puVar17 + 0x16" (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (cast_expression "(short)*(undefined4 *)(iVar1 + 0x14)" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) (pointer_expression "*(undefined4 *)(iVar1 + 0x14)" * (cast_expression "(undefined4 *)(iVar1 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))))) ;) (if_statement "if (piVar14 == piVar28) {\n      return puVar24;\n    }" if (parenthesized_expression "(piVar14 == piVar28)" ( (binary_expression "piVar14 == piVar28" identifier == identifier) )) (compound_statement "{\n      return puVar24;\n    }" { (return_statement "return puVar24;" return identifier ;) })) (expression_statement "piVar22 = (int *)*piVar28;" (assignment_expression "piVar22 = (int *)*piVar28" identifier = (cast_expression "(int *)*piVar28" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar28" * identifier))) ;) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar20 + 0x318cd8)" * (cast_expression "(int *)(puVar20 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318cd8)" ( (binary_expression "puVar20 + 0x318cd8" identifier + number_literal) ))))) ;) (if_statement "if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;" if (parenthesized_expression "((int)puVar24 - iVar9 != piVar22[3])" ( (binary_expression "(int)puVar24 - iVar9 != piVar22[3]" (binary_expression "(int)puVar24 - iVar9" (cast_expression "(int)puVar24" ( (type_descriptor "int" primitive_type) ) identifier) - identifier) != (subscript_expression "piVar22[3]" identifier [ number_literal ])) )) (goto_statement "goto LAB_00119850;" goto statement_identifier ;)) })) (labeled_statement "LAB_00119868:\n  pcVar27 = *(code **)(puVar20 + 0x318ce8);" statement_identifier : (expression_statement "pcVar27 = *(code **)(puVar20 + 0x318ce8);" (assignment_expression "pcVar27 = *(code **)(puVar20 + 0x318ce8)" identifier = (pointer_expression "*(code **)(puVar20 + 0x318ce8)" * (cast_expression "(code **)(puVar20 + 0x318ce8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + 0x318ce8)" ( (binary_expression "puVar20 + 0x318ce8" identifier + number_literal) ))))) ;)) (expression_statement "puVar26 = (undefined4 *)(iVar1 + -0x3578);" (assignment_expression "puVar26 = (undefined4 *)(iVar1 + -0x3578)" identifier = (cast_expression "(undefined4 *)(iVar1 + -0x3578)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + -0x3578)" ( (binary_expression "iVar1 + -0x3578" identifier + number_literal) )))) ;) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4;" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4" identifier = (binary_expression "*(int *)(puVar20 + 0x318b30) + 0x46d4" (pointer_expression "*(int *)(puVar20 + 0x318b30)" * (cast_expression "(int *)(puVar20 + 0x318b30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318b30)" ( (binary_expression "puVar20 + 0x318b30" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar27)(iVar1,0x108,puVar26);" (call_expression "(*pcVar27)(iVar1,0x108,puVar26)" (parenthesized_expression "(*pcVar27)" ( (pointer_expression "*pcVar27" * identifier) )) (argument_list "(iVar1,0x108,puVar26)" ( identifier , number_literal , identifier ))) ;) (expression_statement "puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30);" (assignment_expression "puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30)" identifier = (cast_expression "(undefined4 *)**(int **)(iVar1 + 0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(int **)(iVar1 + 0x30)" * (pointer_expression "*(int **)(iVar1 + 0x30)" * (cast_expression "(int **)(iVar1 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x30)" ( (binary_expression "iVar1 + 0x30" identifier + number_literal) ))))))) ;) (if_statement "if (puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]) {\n    return puVar26;\n  }" if (parenthesized_expression "(puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1])" ( (binary_expression "puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]" identifier == (cast_expression "(undefined4 *)(*(int **)(iVar1 + 0x30))[1]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(*(int **)(iVar1 + 0x30))[1]" (parenthesized_expression "(*(int **)(iVar1 + 0x30))" ( (pointer_expression "*(int **)(iVar1 + 0x30)" * (cast_expression "(int **)(iVar1 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x30)" ( (binary_expression "iVar1 + 0x30" identifier + number_literal) )))) )) [ number_literal ]))) )) (compound_statement "{\n    return puVar26;\n  }" { (return_statement "return puVar26;" return identifier ;) })) (expression_statement "iVar1 = *(int *)(pcVar27 + 0x318b34);" (assignment_expression "iVar1 = *(int *)(pcVar27 + 0x318b34)" identifier = (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) ))))) ;) (expression_statement "piVar28 = (int *)*puVar17;" (assignment_expression "piVar28 = (int *)*puVar17" identifier = (cast_expression "(int *)*puVar17" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar17" * identifier))) ;) (expression_statement "uVar2 = (**(code **)(*piVar28 + 8))(piVar28);" (assignment_expression "uVar2 = (**(code **)(*piVar28 + 8))(piVar28)" identifier = (call_expression "(**(code **)(*piVar28 + 8))(piVar28)" (parenthesized_expression "(**(code **)(*piVar28 + 8))" ( (pointer_expression "**(code **)(*piVar28 + 8)" * (pointer_expression "*(code **)(*piVar28 + 8)" * (cast_expression "(code **)(*piVar28 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar28 + 8)" ( (binary_expression "*piVar28 + 8" (pointer_expression "*piVar28" * identifier) + number_literal) ))))) )) (argument_list "(piVar28)" ( identifier )))) ;) (if_statement "if (uVar2 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x00119950. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return puVar17;\n  }" if (parenthesized_expression "(uVar2 < 6)" ( (binary_expression "uVar2 < 6" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x00119950. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return puVar17;\n  }" { comment comment (expression_statement "puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();" (assignment_expression "puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))()" identifier = (cast_expression "(undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))()" (parenthesized_expression "(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))" ( (pointer_expression "*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950)" * (parenthesized_expression "(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950)" ( (binary_expression "pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950" (binary_expression "pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4)" identifier + (pointer_expression "*(int *)(iVar1 + -0x49fc + uVar2 * 4)" * (cast_expression "(int *)(iVar1 + -0x49fc + uVar2 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + -0x49fc + uVar2 * 4)" ( (binary_expression "iVar1 + -0x49fc + uVar2 * 4" (binary_expression "iVar1 + -0x49fc" identifier + number_literal) + (binary_expression "uVar2 * 4" identifier * number_literal)) ))))) + number_literal) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return puVar17;" return identifier ;) })) (expression_statement "uVar16 = 0x6f2;" (assignment_expression "uVar16 = 0x6f2" identifier = number_literal) ;) (do_statement "do {\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar16 = 0x618;\n  } while( true );" do (compound_statement "{\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar16 = 0x618;\n  }" { (expression_statement "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;" (assignment_expression "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c" identifier = (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x377c" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1)" ( (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x4fcc" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4)" ( (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x5bdc" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar1 + -0x36b4" identifier + number_literal) ))) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);" (call_expression "(**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578)" ( (binary_expression "*(int *)(pcVar27 + 0x31898c) + 0x46d4" (pointer_expression "*(int *)(pcVar27 + 0x31898c)" * (cast_expression "(int *)(pcVar27 + 0x31898c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x31898c)" ( (binary_expression "pcVar27 + 0x31898c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x3578" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;" (assignment_expression "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c" identifier = (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x366c" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1)" ( (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x5bdc" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "iVar1 = iVar1 + -0x35d8;" (assignment_expression "iVar1 = iVar1 + -0x35d8" identifier = (binary_expression "iVar1 + -0x35d8" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1)" ( (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x4fe0" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4)" ( (binary_expression "*(int *)(pcVar27 + 0x31898c) + 0x44a8" (pointer_expression "*(int *)(pcVar27 + 0x31898c)" * (cast_expression "(int *)(pcVar27 + 0x31898c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x31898c)" ( (binary_expression "pcVar27 + 0x31898c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar1 + -0x35b4" identifier + number_literal) ))) ;) (expression_statement "uVar16 = 0x618;" (assignment_expression "uVar16 = 0x618" identifier = number_literal) ;) }) while (parenthesized_expression "( true )" ( true )) ;) (labeled_statement "LAB_00119850:\n  iVar1 = iVar1 + -0x3768;" statement_identifier : (expression_statement "iVar1 = iVar1 + -0x3768;" (assignment_expression "iVar1 = iVar1 + -0x3768" identifier = (binary_expression "iVar1 + -0x3768" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);" (call_expression "(**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1)" (parenthesized_expression "(**(code **)(puVar20 + 0x318ce8))" ( (pointer_expression "**(code **)(puVar20 + 0x318ce8)" * (pointer_expression "*(code **)(puVar20 + 0x318ce8)" * (cast_expression "(code **)(puVar20 + 0x318ce8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + 0x318ce8)" ( (binary_expression "puVar20 + 0x318ce8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1)" ( (binary_expression "*(int *)(puVar20 + 0x318cd8) + -0x4fcc" (pointer_expression "*(int *)(puVar20 + 0x318cd8)" * (cast_expression "(int *)(puVar20 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318cd8)" ( (binary_expression "puVar20 + 0x318cd8" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (goto_statement "goto LAB_00119868;" goto statement_identifier ;) }))
(translation_unit "/* WARNING: Type propagation algorithm not settling */\n/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */\n/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */\n/* DWARF original prototype: void do_write(Output_section_incremental_inputs<64,_false> * this,\n   Output_file * of) */\n\nvoid __thiscall\ngold::Output_section_incremental_inputs<64,_false>::do_write\n          (Output_section_incremental_inputs<64,_false> *this,Output_file *of)\n\n{\n  int iVar1;\n  uint uVar2;\n  uint *global_syms;\n  uint uVar3;\n  uchar *puVar4;\n  ushort uVar5;\n  undefined *puVar6;\n  Output_data_space *pOVar7;\n  uint uVar8;\n  uint uVar9;\n  uint *puVar10;\n  uint extraout_v1;\n  undefined *puVar11;\n  int *piVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  int *piVar16;\n  undefined4 *puVar17;\n  int iVar18;\n  int iVar19;\n  uchar *in_t1;\n  uchar *puVar20;\n  Stringpool *strtab;\n  int *piVar21;\n  uchar *oview;\n  uchar *puVar22;\n  undefined4 *puVar23;\n  Output_section_incremental_inputs<64,_false> *unaff_s4;\n  uchar *puVar24;\n  Output_file *unaff_s6;\n  code *pcVar25;\n  Incremental_inputs *pIVar26;\n  off_t in_stack_00000010;\n  \n  iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.field_0x20;\n  pIVar26 = this->inputs_;\n  strtab = pIVar26->strtab_;\n  if (-1 < iVar1 << 2) goto LAB_00119650;\n  iVar19 = (int)(this->super_Output_section_data).super_Output_data.offset_;\n  iVar14 = *(int *)&(this->super_Output_section_data).super_Output_data.offset_;\n  if (-1 < iVar1 << 1) goto LAB_00119634;\n  iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.data_size_;\n  puVar20 = *(uchar **)((int)&(this->super_Output_section_data).super_Output_data.data_size_ + 4);\n  if (-1 < iVar14) {\n    puVar11 = *(undefined **)&of->file_size_;\n    puVar6 = (undefined *)((uint)(puVar20 + iVar19 < puVar20) + iVar14);\n    in_t1 = *(uchar **)((int)&of->file_size_ + 4);\n    if (((int)puVar6 <= (int)puVar11) && ((puVar6 != puVar11 || (puVar20 + iVar19 <= in_t1)))) {\n      pOVar7 = pIVar26->symtab_section_;\n      piVar21 = (int *)of->base_;\n      iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.field_0x20;\n      oview = (uchar *)((int)piVar21 + iVar19);\n      unaff_s4 = this;\n      unaff_s6 = of;\n      if (-1 < iVar14 << 2) goto LAB_00119650;\n      iVar19 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_;\n      puVar17 = *(undefined4 **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_ + 4);\n      if (-1 < iVar14 << 1) goto LAB_00119634;\n      uVar2 = *(uint *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_;\n      puVar22 = *(uchar **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_ + 4);\n      if (-1 < iVar19) {\n        puVar6 = (undefined *)((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19);\n        if ((int)puVar6 <= (int)puVar11) {\n          uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17);\n          iVar14 = 0;\n          if (puVar6 == puVar11) goto LAB_001196c0;\nLAB_0011940c:\n          uVar8 = this->symtab_->output_count_;\n          piVar21 = (int *)((int)piVar21 + (int)puVar17);\n          if (uVar8 < 0x20000000) {\n            puVar24 = (uchar *)(uVar8 << 2);\n            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);\n            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);\n            uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;\n            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;\n            uVar9 = pIVar26->command_line_key_ - 1;\n            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);\n            *(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n            oview[0] = '\x02';\n            oview[1] = '\0';\n            oview[2] = '\0';\n            oview[3] = '\0';\n            oview[0xc] = '\0';\n            oview[0xd] = '\0';\n            oview[0xe] = '\0';\n            oview[0xf] = '\0';\n            *(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;\n            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);\n            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);\n            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;\n            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;\n            uVar15 = 0x59f;\n            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }\n            piVar12 = (int *)((int)piVar21 + (int)puVar22);\n            puVar10 = global_syms;\n            if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(global_syms);\n            pOVar7 = pIVar26->got_plt_section_;\n            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;\n            if (-1 < iVar1 << 2) goto LAB_00119650;\n            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;\n            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;\n            if (-1 < iVar1 << 1) goto LAB_00119634;\n            puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);\n            if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar23 = *(undefined4 **)(puVar11 + 0x30);\n          piVar21 = (int *)*puVar23;\n          if (piVar21 == (int *)puVar23[1]) {\n            return;\n          }\n          piVar12 = (int *)*piVar21;\n          if ((int)puVar17 - iVar14 != piVar12[3]) {\n            iVar1 = *(int *)(puVar6 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar12[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar6 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }\nLAB_00119628:\n  pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);\nLAB_0011962c:\n  while( true ) {\n    (*pcVar25)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = this;\n    unaff_s6 = of;\nLAB_00119650:\n    of = unaff_s6;\n    this = unaff_s4;\n    iVar19 = 0xe3;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (uchar *)(uint)(*(uchar **)((int)&of->file_size_ + 4) < in_t1);\n    if (in_t1 == (uchar *)0x0) break;\n    pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }\nLAB_001195dc:\n  write_got_plt(this,of->base_ + iVar19,in_stack_00000010);\n  return;\nLAB_001196a4:\n  iVar14 = 0x108;\n  puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);\n  puVar11 = PTR_LAB_0043220c + 0x46d4;\n  (*(code *)PTR_do_gold_unreachable_004323c4)();\n  uVar8 = extraout_v1;\nLAB_001196c0:\n  if (uVar8 != 0) goto code_r0x001196c8;\n  goto LAB_0011940c;\ncode_r0x001196c8:\n  pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  goto LAB_0011962c;\n  while( true ) {\n    uVar2 = piVar12[1];\n    iVar1 = *(int *)(puVar6 + 0x318cd8);\n    puVar17 = puVar17 + 6;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar15 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar5 = (**(code **)(*piVar12 + 8))(piVar12);\n    iVar1 = *piVar21;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar5 = uVar5 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar5 = uVar5 | 0x4000;\n    }\n    iVar13 = piVar12[6];\n    piVar16 = (int *)puVar23[1];\n    piVar21 = piVar21 + 1;\n    *puVar17 = uVar15;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar12[7];\n    *(ushort *)(puVar17 + 5) = uVar5;\n    puVar17[3] = iVar13;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar13 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar16 == piVar21) {\n      return;\n    }\n    piVar12 = (int *)*piVar21;\n    iVar1 = *(int *)(puVar6 + 0x318cd8);\n    if ((int)(puVar17 + 6) - iVar14 != piVar12[3]) goto LAB_00119850;\n  }\nLAB_00119868:\n  pcVar25 = *(code **)(puVar6 + 0x318ce8);\n  iVar14 = *(int *)(puVar6 + 0x318b30) + 0x46d4;\n  (*pcVar25)(iVar14,0x108,iVar1 + -0x3578);\n  puVar17 = (undefined4 *)**(int **)(iVar14 + 0x30);\n  if (puVar17 == (undefined4 *)(*(int **)(iVar14 + 0x30))[1]) {\n    return;\n  }\n  iVar1 = *(int *)(pcVar25 + 0x318b34);\n  piVar21 = (int *)*puVar17;\n  uVar2 = (**(code **)(*piVar21 + 8))(piVar21);\n  if (uVar2 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x00119950. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    (*(pcVar25 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return;\n  }\n  uVar15 = 0x6f2;\n  do {\n    iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fcc,uVar15,iVar1);\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar25 + 0x318b44))\n              (*(int *)(pcVar25 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar25 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar15 = 0x618;\n  } while( true );\nLAB_00119850:\n  iVar1 = iVar1 + -0x3768;\n  (**(code **)(puVar6 + 0x318ce8))(*(int *)(puVar6 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);\n  goto LAB_00119868;\n}\n\n" comment comment comment comment (declaration "void __thiscall\ngold::Output_section_incremental_inputs<64,_false>::do_write\n          (Output_section_incremental_inputs<64,_false> *this,Output_file *of)\n\n{\n  int iVar1;" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::" identifier : :) identifier (ERROR "<64" < number_literal) , (ERROR "_false>::do_write\n          (Output_section_incremental_inputs<64,_false> *this,Output_file *of)\n\n{\n  int" identifier > : : (function_declarator "do_write\n          (Output_section_incremental_inputs<64,_false> *this,Output_file *of)" identifier (parameter_list "(Output_section_incremental_inputs<64,_false> *this,Output_file *of)" ( (parameter_declaration "Output_section_incremental_inputs" type_identifier) (ERROR "<64" < number_literal) , (parameter_declaration "_false> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) , (parameter_declaration "Output_file *of" type_identifier (pointer_declarator "*of" * identifier)) ))) { primitive_type) identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "uint *global_syms;" type_identifier (pointer_declarator "*global_syms" * identifier) ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "uchar *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "ushort uVar5;" type_identifier identifier ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "Output_data_space *pOVar7;" type_identifier (pointer_declarator "*pOVar7" * identifier) ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint *puVar10;" type_identifier (pointer_declarator "*puVar10" * identifier) ;) (declaration "uint extraout_v1;" type_identifier identifier ;) (declaration "undefined *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "int *piVar12;" primitive_type (pointer_declarator "*piVar12" * identifier) ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "undefined4 uVar15;" type_identifier identifier ;) (declaration "int *piVar16;" primitive_type (pointer_declarator "*piVar16" * identifier) ;) (declaration "undefined4 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "uchar *in_t1;" type_identifier (pointer_declarator "*in_t1" * identifier) ;) (declaration "uchar *puVar20;" type_identifier (pointer_declarator "*puVar20" * identifier) ;) (declaration "Stringpool *strtab;" type_identifier (pointer_declarator "*strtab" * identifier) ;) (declaration "int *piVar21;" primitive_type (pointer_declarator "*piVar21" * identifier) ;) (declaration "uchar *oview;" type_identifier (pointer_declarator "*oview" * identifier) ;) (declaration "uchar *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "undefined4 *puVar23;" type_identifier (pointer_declarator "*puVar23" * identifier) ;) (expression_statement "Output_section_incremental_inputs<64,_false> *unaff_s4;" (update_expression "Output_section_incremental_inputs<64,_false> *unaff_s4" (binary_expression "Output_section_incremental_inputs<64,_false> *unaff_s4" (binary_expression "Output_section_incremental_inputs<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*unaff_s4" * identifier)) --) ;) (declaration "uchar *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "Output_file *unaff_s6;" type_identifier (pointer_declarator "*unaff_s6" * identifier) ;) (declaration "code *pcVar25;" type_identifier (pointer_declarator "*pcVar25" * identifier) ;) (declaration "Incremental_inputs *pIVar26;" type_identifier (pointer_declarator "*pIVar26" * identifier) ;) (declaration "off_t in_stack_00000010;" type_identifier identifier ;) (expression_statement "iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.field_0x20;" (assignment_expression "iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.field_0x20" identifier = (pointer_expression "*(int *)&(this->super_Output_section_data).super_Output_data.field_0x20" * (cast_expression "(int *)&(this->super_Output_section_data).super_Output_data.field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(this->super_Output_section_data).super_Output_data.field_0x20" & (field_expression "(this->super_Output_section_data).super_Output_data.field_0x20" (field_expression "(this->super_Output_section_data).super_Output_data" (parenthesized_expression "(this->super_Output_section_data)" ( (field_expression "this->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier))))) ;) (expression_statement "pIVar26 = this->inputs_;" (assignment_expression "pIVar26 = this->inputs_" identifier = (field_expression "this->inputs_" identifier -> field_identifier)) ;) (expression_statement "strtab = pIVar26->strtab_;" (assignment_expression "strtab = pIVar26->strtab_" identifier = (field_expression "pIVar26->strtab_" identifier -> field_identifier)) ;) (if_statement "if (-1 < iVar1 << 2) goto LAB_00119650;" if (parenthesized_expression "(-1 < iVar1 << 2)" ( (binary_expression "-1 < iVar1 << 2" number_literal < (binary_expression "iVar1 << 2" identifier << number_literal)) )) (goto_statement "goto LAB_00119650;" goto statement_identifier ;)) (expression_statement "iVar19 = (int)(this->super_Output_section_data).super_Output_data.offset_;" (assignment_expression "iVar19 = (int)(this->super_Output_section_data).super_Output_data.offset_" identifier = (cast_expression "(int)(this->super_Output_section_data).super_Output_data.offset_" ( (type_descriptor "int" primitive_type) ) (field_expression "(this->super_Output_section_data).super_Output_data.offset_" (field_expression "(this->super_Output_section_data).super_Output_data" (parenthesized_expression "(this->super_Output_section_data)" ( (field_expression "this->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier))) ;) (expression_statement "iVar14 = *(int *)&(this->super_Output_section_data).super_Output_data.offset_;" (assignment_expression "iVar14 = *(int *)&(this->super_Output_section_data).super_Output_data.offset_" identifier = (pointer_expression "*(int *)&(this->super_Output_section_data).super_Output_data.offset_" * (cast_expression "(int *)&(this->super_Output_section_data).super_Output_data.offset_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(this->super_Output_section_data).super_Output_data.offset_" & (field_expression "(this->super_Output_section_data).super_Output_data.offset_" (field_expression "(this->super_Output_section_data).super_Output_data" (parenthesized_expression "(this->super_Output_section_data)" ( (field_expression "this->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier))))) ;) (if_statement "if (-1 < iVar1 << 1) goto LAB_00119634;" if (parenthesized_expression "(-1 < iVar1 << 1)" ( (binary_expression "-1 < iVar1 << 1" number_literal < (binary_expression "iVar1 << 1" identifier << number_literal)) )) (goto_statement "goto LAB_00119634;" goto statement_identifier ;)) (expression_statement "iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.data_size_;" (assignment_expression "iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.data_size_" identifier = (pointer_expression "*(int *)&(this->super_Output_section_data).super_Output_data.data_size_" * (cast_expression "(int *)&(this->super_Output_section_data).super_Output_data.data_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(this->super_Output_section_data).super_Output_data.data_size_" & (field_expression "(this->super_Output_section_data).super_Output_data.data_size_" (field_expression "(this->super_Output_section_data).super_Output_data" (parenthesized_expression "(this->super_Output_section_data)" ( (field_expression "this->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier))))) ;) (expression_statement "puVar20 = *(uchar **)((int)&(this->super_Output_section_data).super_Output_data.data_size_ + 4);" (assignment_expression "puVar20 = *(uchar **)((int)&(this->super_Output_section_data).super_Output_data.data_size_ + 4)" identifier = (pointer_expression "*(uchar **)((int)&(this->super_Output_section_data).super_Output_data.data_size_ + 4)" * (cast_expression "(uchar **)((int)&(this->super_Output_section_data).super_Output_data.data_size_ + 4)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&(this->super_Output_section_data).super_Output_data.data_size_ + 4)" ( (binary_expression "(int)&(this->super_Output_section_data).super_Output_data.data_size_ + 4" (cast_expression "(int)&(this->super_Output_section_data).super_Output_data.data_size_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(this->super_Output_section_data).super_Output_data.data_size_" & (field_expression "(this->super_Output_section_data).super_Output_data.data_size_" (field_expression "(this->super_Output_section_data).super_Output_data" (parenthesized_expression "(this->super_Output_section_data)" ( (field_expression "this->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier))) + number_literal) ))))) ;) (if_statement "if (-1 < iVar14) {\n    puVar11 = *(undefined **)&of->file_size_;\n    puVar6 = (undefined *)((uint)(puVar20 + iVar19 < puVar20) + iVar14);\n    in_t1 = *(uchar **)((int)&of->file_size_ + 4);\n    if (((int)puVar6 <= (int)puVar11) && ((puVar6 != puVar11 || (puVar20 + iVar19 <= in_t1)))) {\n      pOVar7 = pIVar26->symtab_section_;\n      piVar21 = (int *)of->base_;\n      iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.field_0x20;\n      oview = (uchar *)((int)piVar21 + iVar19);\n      unaff_s4 = this;\n      unaff_s6 = of;\n      if (-1 < iVar14 << 2) goto LAB_00119650;\n      iVar19 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_;\n      puVar17 = *(undefined4 **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_ + 4);\n      if (-1 < iVar14 << 1) goto LAB_00119634;\n      uVar2 = *(uint *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_;\n      puVar22 = *(uchar **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_ + 4);\n      if (-1 < iVar19) {\n        puVar6 = (undefined *)((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19);\n        if ((int)puVar6 <= (int)puVar11) {\n          uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17);\n          iVar14 = 0;\n          if (puVar6 == puVar11) goto LAB_001196c0;\nLAB_0011940c:\n          uVar8 = this->symtab_->output_count_;\n          piVar21 = (int *)((int)piVar21 + (int)puVar17);\n          if (uVar8 < 0x20000000) {\n            puVar24 = (uchar *)(uVar8 << 2);\n            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);\n            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);\n            uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;\n            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;\n            uVar9 = pIVar26->command_line_key_ - 1;\n            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);\n            *(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n            oview[0] = '\x02';\n            oview[1] = '\0';\n            oview[2] = '\0';\n            oview[3] = '\0';\n            oview[0xc] = '\0';\n            oview[0xd] = '\0';\n            oview[0xe] = '\0';\n            oview[0xf] = '\0';\n            *(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;\n            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);\n            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);\n            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;\n            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;\n            uVar15 = 0x59f;\n            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }\n            piVar12 = (int *)((int)piVar21 + (int)puVar22);\n            puVar10 = global_syms;\n            if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(global_syms);\n            pOVar7 = pIVar26->got_plt_section_;\n            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;\n            if (-1 < iVar1 << 2) goto LAB_00119650;\n            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;\n            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;\n            if (-1 < iVar1 << 1) goto LAB_00119634;\n            puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);\n            if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar23 = *(undefined4 **)(puVar11 + 0x30);\n          piVar21 = (int *)*puVar23;\n          if (piVar21 == (int *)puVar23[1]) {\n            return;\n          }\n          piVar12 = (int *)*piVar21;\n          if ((int)puVar17 - iVar14 != piVar12[3]) {\n            iVar1 = *(int *)(puVar6 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar12[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar6 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }" if (parenthesized_expression "(-1 < iVar14)" ( (binary_expression "-1 < iVar14" number_literal < identifier) )) (compound_statement "{\n    puVar11 = *(undefined **)&of->file_size_;\n    puVar6 = (undefined *)((uint)(puVar20 + iVar19 < puVar20) + iVar14);\n    in_t1 = *(uchar **)((int)&of->file_size_ + 4);\n    if (((int)puVar6 <= (int)puVar11) && ((puVar6 != puVar11 || (puVar20 + iVar19 <= in_t1)))) {\n      pOVar7 = pIVar26->symtab_section_;\n      piVar21 = (int *)of->base_;\n      iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.field_0x20;\n      oview = (uchar *)((int)piVar21 + iVar19);\n      unaff_s4 = this;\n      unaff_s6 = of;\n      if (-1 < iVar14 << 2) goto LAB_00119650;\n      iVar19 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_;\n      puVar17 = *(undefined4 **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_ + 4);\n      if (-1 < iVar14 << 1) goto LAB_00119634;\n      uVar2 = *(uint *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_;\n      puVar22 = *(uchar **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_ + 4);\n      if (-1 < iVar19) {\n        puVar6 = (undefined *)((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19);\n        if ((int)puVar6 <= (int)puVar11) {\n          uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17);\n          iVar14 = 0;\n          if (puVar6 == puVar11) goto LAB_001196c0;\nLAB_0011940c:\n          uVar8 = this->symtab_->output_count_;\n          piVar21 = (int *)((int)piVar21 + (int)puVar17);\n          if (uVar8 < 0x20000000) {\n            puVar24 = (uchar *)(uVar8 << 2);\n            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);\n            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);\n            uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;\n            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;\n            uVar9 = pIVar26->command_line_key_ - 1;\n            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);\n            *(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n            oview[0] = '\x02';\n            oview[1] = '\0';\n            oview[2] = '\0';\n            oview[3] = '\0';\n            oview[0xc] = '\0';\n            oview[0xd] = '\0';\n            oview[0xe] = '\0';\n            oview[0xf] = '\0';\n            *(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;\n            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);\n            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);\n            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;\n            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;\n            uVar15 = 0x59f;\n            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }\n            piVar12 = (int *)((int)piVar21 + (int)puVar22);\n            puVar10 = global_syms;\n            if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(global_syms);\n            pOVar7 = pIVar26->got_plt_section_;\n            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;\n            if (-1 < iVar1 << 2) goto LAB_00119650;\n            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;\n            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;\n            if (-1 < iVar1 << 1) goto LAB_00119634;\n            puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);\n            if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar23 = *(undefined4 **)(puVar11 + 0x30);\n          piVar21 = (int *)*puVar23;\n          if (piVar21 == (int *)puVar23[1]) {\n            return;\n          }\n          piVar12 = (int *)*piVar21;\n          if ((int)puVar17 - iVar14 != piVar12[3]) {\n            iVar1 = *(int *)(puVar6 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar12[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar6 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }" { (expression_statement "puVar11 = *(undefined **)&of->file_size_;" (assignment_expression "puVar11 = *(undefined **)&of->file_size_" identifier = (pointer_expression "*(undefined **)&of->file_size_" * (cast_expression "(undefined **)&of->file_size_" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&of->file_size_" & (field_expression "of->file_size_" identifier -> field_identifier))))) ;) (expression_statement "puVar6 = (undefined *)((uint)(puVar20 + iVar19 < puVar20) + iVar14);" (assignment_expression "puVar6 = (undefined *)((uint)(puVar20 + iVar19 < puVar20) + iVar14)" identifier = (cast_expression "(undefined *)((uint)(puVar20 + iVar19 < puVar20) + iVar14)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)(puVar20 + iVar19 < puVar20) + iVar14)" ( (binary_expression "(uint)(puVar20 + iVar19 < puVar20) + iVar14" (call_expression "(uint)(puVar20 + iVar19 < puVar20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar20 + iVar19 < puVar20)" ( (binary_expression "puVar20 + iVar19 < puVar20" (binary_expression "puVar20 + iVar19" identifier + identifier) < identifier) ))) + identifier) )))) ;) (expression_statement "in_t1 = *(uchar **)((int)&of->file_size_ + 4);" (assignment_expression "in_t1 = *(uchar **)((int)&of->file_size_ + 4)" identifier = (pointer_expression "*(uchar **)((int)&of->file_size_ + 4)" * (cast_expression "(uchar **)((int)&of->file_size_ + 4)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&of->file_size_ + 4)" ( (binary_expression "(int)&of->file_size_ + 4" (cast_expression "(int)&of->file_size_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&of->file_size_" & (field_expression "of->file_size_" identifier -> field_identifier))) + number_literal) ))))) ;) (if_statement "if (((int)puVar6 <= (int)puVar11) && ((puVar6 != puVar11 || (puVar20 + iVar19 <= in_t1)))) {\n      pOVar7 = pIVar26->symtab_section_;\n      piVar21 = (int *)of->base_;\n      iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.field_0x20;\n      oview = (uchar *)((int)piVar21 + iVar19);\n      unaff_s4 = this;\n      unaff_s6 = of;\n      if (-1 < iVar14 << 2) goto LAB_00119650;\n      iVar19 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_;\n      puVar17 = *(undefined4 **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_ + 4);\n      if (-1 < iVar14 << 1) goto LAB_00119634;\n      uVar2 = *(uint *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_;\n      puVar22 = *(uchar **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_ + 4);\n      if (-1 < iVar19) {\n        puVar6 = (undefined *)((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19);\n        if ((int)puVar6 <= (int)puVar11) {\n          uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17);\n          iVar14 = 0;\n          if (puVar6 == puVar11) goto LAB_001196c0;\nLAB_0011940c:\n          uVar8 = this->symtab_->output_count_;\n          piVar21 = (int *)((int)piVar21 + (int)puVar17);\n          if (uVar8 < 0x20000000) {\n            puVar24 = (uchar *)(uVar8 << 2);\n            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);\n            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);\n            uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;\n            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;\n            uVar9 = pIVar26->command_line_key_ - 1;\n            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);\n            *(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n            oview[0] = '\x02';\n            oview[1] = '\0';\n            oview[2] = '\0';\n            oview[3] = '\0';\n            oview[0xc] = '\0';\n            oview[0xd] = '\0';\n            oview[0xe] = '\0';\n            oview[0xf] = '\0';\n            *(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;\n            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);\n            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);\n            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;\n            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;\n            uVar15 = 0x59f;\n            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }\n            piVar12 = (int *)((int)piVar21 + (int)puVar22);\n            puVar10 = global_syms;\n            if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(global_syms);\n            pOVar7 = pIVar26->got_plt_section_;\n            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;\n            if (-1 < iVar1 << 2) goto LAB_00119650;\n            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;\n            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;\n            if (-1 < iVar1 << 1) goto LAB_00119634;\n            puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);\n            if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar23 = *(undefined4 **)(puVar11 + 0x30);\n          piVar21 = (int *)*puVar23;\n          if (piVar21 == (int *)puVar23[1]) {\n            return;\n          }\n          piVar12 = (int *)*piVar21;\n          if ((int)puVar17 - iVar14 != piVar12[3]) {\n            iVar1 = *(int *)(puVar6 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar12[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar6 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }" if (parenthesized_expression "(((int)puVar6 <= (int)puVar11) && ((puVar6 != puVar11 || (puVar20 + iVar19 <= in_t1))))" ( (binary_expression "((int)puVar6 <= (int)puVar11) && ((puVar6 != puVar11 || (puVar20 + iVar19 <= in_t1)))" (parenthesized_expression "((int)puVar6 <= (int)puVar11)" ( (binary_expression "(int)puVar6 <= (int)puVar11" (cast_expression "(int)puVar6" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "((puVar6 != puVar11 || (puVar20 + iVar19 <= in_t1)))" ( (parenthesized_expression "(puVar6 != puVar11 || (puVar20 + iVar19 <= in_t1))" ( (binary_expression "puVar6 != puVar11 || (puVar20 + iVar19 <= in_t1)" (binary_expression "puVar6 != puVar11" identifier != identifier) || (parenthesized_expression "(puVar20 + iVar19 <= in_t1)" ( (binary_expression "puVar20 + iVar19 <= in_t1" (binary_expression "puVar20 + iVar19" identifier + identifier) <= identifier) ))) )) ))) )) (compound_statement "{\n      pOVar7 = pIVar26->symtab_section_;\n      piVar21 = (int *)of->base_;\n      iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.field_0x20;\n      oview = (uchar *)((int)piVar21 + iVar19);\n      unaff_s4 = this;\n      unaff_s6 = of;\n      if (-1 < iVar14 << 2) goto LAB_00119650;\n      iVar19 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_;\n      puVar17 = *(undefined4 **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_ + 4);\n      if (-1 < iVar14 << 1) goto LAB_00119634;\n      uVar2 = *(uint *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_;\n      puVar22 = *(uchar **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_ + 4);\n      if (-1 < iVar19) {\n        puVar6 = (undefined *)((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19);\n        if ((int)puVar6 <= (int)puVar11) {\n          uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17);\n          iVar14 = 0;\n          if (puVar6 == puVar11) goto LAB_001196c0;\nLAB_0011940c:\n          uVar8 = this->symtab_->output_count_;\n          piVar21 = (int *)((int)piVar21 + (int)puVar17);\n          if (uVar8 < 0x20000000) {\n            puVar24 = (uchar *)(uVar8 << 2);\n            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);\n            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);\n            uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;\n            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;\n            uVar9 = pIVar26->command_line_key_ - 1;\n            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);\n            *(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n            oview[0] = '\x02';\n            oview[1] = '\0';\n            oview[2] = '\0';\n            oview[3] = '\0';\n            oview[0xc] = '\0';\n            oview[0xd] = '\0';\n            oview[0xe] = '\0';\n            oview[0xf] = '\0';\n            *(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;\n            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);\n            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);\n            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;\n            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;\n            uVar15 = 0x59f;\n            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }\n            piVar12 = (int *)((int)piVar21 + (int)puVar22);\n            puVar10 = global_syms;\n            if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(global_syms);\n            pOVar7 = pIVar26->got_plt_section_;\n            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;\n            if (-1 < iVar1 << 2) goto LAB_00119650;\n            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;\n            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;\n            if (-1 < iVar1 << 1) goto LAB_00119634;\n            puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);\n            if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar23 = *(undefined4 **)(puVar11 + 0x30);\n          piVar21 = (int *)*puVar23;\n          if (piVar21 == (int *)puVar23[1]) {\n            return;\n          }\n          piVar12 = (int *)*piVar21;\n          if ((int)puVar17 - iVar14 != piVar12[3]) {\n            iVar1 = *(int *)(puVar6 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar12[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar6 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }" { (expression_statement "pOVar7 = pIVar26->symtab_section_;" (assignment_expression "pOVar7 = pIVar26->symtab_section_" identifier = (field_expression "pIVar26->symtab_section_" identifier -> field_identifier)) ;) (expression_statement "piVar21 = (int *)of->base_;" (assignment_expression "piVar21 = (int *)of->base_" identifier = (cast_expression "(int *)of->base_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "of->base_" identifier -> field_identifier))) ;) (expression_statement "iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.field_0x20;" (assignment_expression "iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.field_0x20" identifier = (pointer_expression "*(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.field_0x20" * (cast_expression "(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.field_0x20" & (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.field_0x20" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data" (parenthesized_expression "(pOVar7->super_Output_section_data_build)" ( (field_expression "pOVar7->super_Output_section_data_build" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier))))) ;) (expression_statement "oview = (uchar *)((int)piVar21 + iVar19);" (assignment_expression "oview = (uchar *)((int)piVar21 + iVar19)" identifier = (cast_expression "(uchar *)((int)piVar21 + iVar19)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar21 + iVar19)" ( (binary_expression "(int)piVar21 + iVar19" (cast_expression "(int)piVar21" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "unaff_s4 = this;" (assignment_expression "unaff_s4 = this" identifier = identifier) ;) (expression_statement "unaff_s6 = of;" (assignment_expression "unaff_s6 = of" identifier = identifier) ;) (if_statement "if (-1 < iVar14 << 2) goto LAB_00119650;" if (parenthesized_expression "(-1 < iVar14 << 2)" ( (binary_expression "-1 < iVar14 << 2" number_literal < (binary_expression "iVar14 << 2" identifier << number_literal)) )) (goto_statement "goto LAB_00119650;" goto statement_identifier ;)) (expression_statement "iVar19 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_;" (assignment_expression "iVar19 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_" identifier = (pointer_expression "*(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_" * (cast_expression "(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_" & (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data" (parenthesized_expression "(pOVar7->super_Output_section_data_build)" ( (field_expression "pOVar7->super_Output_section_data_build" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier))))) ;) (expression_statement "puVar17 = *(undefined4 **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_ + 4);" (assignment_expression "puVar17 = *(undefined4 **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_ + 4)" identifier = (pointer_expression "*(undefined4 **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_ + 4)" * (cast_expression "(undefined4 **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_ + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_ + 4)" ( (binary_expression "(int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_ + 4" (cast_expression "(int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_" & (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.offset_" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data" (parenthesized_expression "(pOVar7->super_Output_section_data_build)" ( (field_expression "pOVar7->super_Output_section_data_build" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier))) + number_literal) ))))) ;) (if_statement "if (-1 < iVar14 << 1) goto LAB_00119634;" if (parenthesized_expression "(-1 < iVar14 << 1)" ( (binary_expression "-1 < iVar14 << 1" number_literal < (binary_expression "iVar14 << 1" identifier << number_literal)) )) (goto_statement "goto LAB_00119634;" goto statement_identifier ;)) (expression_statement "uVar2 = *(uint *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_;" (assignment_expression "uVar2 = *(uint *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_" identifier = (pointer_expression "*(uint *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_" * (cast_expression "(uint *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_" & (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data" (parenthesized_expression "(pOVar7->super_Output_section_data_build)" ( (field_expression "pOVar7->super_Output_section_data_build" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier))))) ;) (expression_statement "puVar22 = *(uchar **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_ + 4);" (assignment_expression "puVar22 = *(uchar **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_ + 4)" identifier = (pointer_expression "*(uchar **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_ + 4)" * (cast_expression "(uchar **)\n                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_ + 4)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_ + 4)" ( (binary_expression "(int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_ + 4" (cast_expression "(int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_" & (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data.data_size_" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                        super_Output_data" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data" (parenthesized_expression "(pOVar7->super_Output_section_data_build)" ( (field_expression "pOVar7->super_Output_section_data_build" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier))) + number_literal) ))))) ;) (if_statement "if (-1 < iVar19) {\n        puVar6 = (undefined *)((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19);\n        if ((int)puVar6 <= (int)puVar11) {\n          uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17);\n          iVar14 = 0;\n          if (puVar6 == puVar11) goto LAB_001196c0;\nLAB_0011940c:\n          uVar8 = this->symtab_->output_count_;\n          piVar21 = (int *)((int)piVar21 + (int)puVar17);\n          if (uVar8 < 0x20000000) {\n            puVar24 = (uchar *)(uVar8 << 2);\n            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);\n            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);\n            uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;\n            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;\n            uVar9 = pIVar26->command_line_key_ - 1;\n            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);\n            *(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n            oview[0] = '\x02';\n            oview[1] = '\0';\n            oview[2] = '\0';\n            oview[3] = '\0';\n            oview[0xc] = '\0';\n            oview[0xd] = '\0';\n            oview[0xe] = '\0';\n            oview[0xf] = '\0';\n            *(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;\n            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);\n            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);\n            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;\n            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;\n            uVar15 = 0x59f;\n            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }\n            piVar12 = (int *)((int)piVar21 + (int)puVar22);\n            puVar10 = global_syms;\n            if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(global_syms);\n            pOVar7 = pIVar26->got_plt_section_;\n            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;\n            if (-1 < iVar1 << 2) goto LAB_00119650;\n            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;\n            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;\n            if (-1 < iVar1 << 1) goto LAB_00119634;\n            puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);\n            if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar23 = *(undefined4 **)(puVar11 + 0x30);\n          piVar21 = (int *)*puVar23;\n          if (piVar21 == (int *)puVar23[1]) {\n            return;\n          }\n          piVar12 = (int *)*piVar21;\n          if ((int)puVar17 - iVar14 != piVar12[3]) {\n            iVar1 = *(int *)(puVar6 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar12[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar6 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }" if (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) (compound_statement "{\n        puVar6 = (undefined *)((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19);\n        if ((int)puVar6 <= (int)puVar11) {\n          uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17);\n          iVar14 = 0;\n          if (puVar6 == puVar11) goto LAB_001196c0;\nLAB_0011940c:\n          uVar8 = this->symtab_->output_count_;\n          piVar21 = (int *)((int)piVar21 + (int)puVar17);\n          if (uVar8 < 0x20000000) {\n            puVar24 = (uchar *)(uVar8 << 2);\n            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);\n            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);\n            uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;\n            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;\n            uVar9 = pIVar26->command_line_key_ - 1;\n            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);\n            *(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n            oview[0] = '\x02';\n            oview[1] = '\0';\n            oview[2] = '\0';\n            oview[3] = '\0';\n            oview[0xc] = '\0';\n            oview[0xd] = '\0';\n            oview[0xe] = '\0';\n            oview[0xf] = '\0';\n            *(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;\n            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);\n            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);\n            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;\n            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;\n            uVar15 = 0x59f;\n            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }\n            piVar12 = (int *)((int)piVar21 + (int)puVar22);\n            puVar10 = global_syms;\n            if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(global_syms);\n            pOVar7 = pIVar26->got_plt_section_;\n            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;\n            if (-1 < iVar1 << 2) goto LAB_00119650;\n            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;\n            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;\n            if (-1 < iVar1 << 1) goto LAB_00119634;\n            puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);\n            if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar23 = *(undefined4 **)(puVar11 + 0x30);\n          piVar21 = (int *)*puVar23;\n          if (piVar21 == (int *)puVar23[1]) {\n            return;\n          }\n          piVar12 = (int *)*piVar21;\n          if ((int)puVar17 - iVar14 != piVar12[3]) {\n            iVar1 = *(int *)(puVar6 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar12[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar6 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }" { (expression_statement "puVar6 = (undefined *)((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19);" (assignment_expression "puVar6 = (undefined *)((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19)" identifier = (cast_expression "(undefined *)((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)(puVar22 + (int)puVar17 < puVar22) + iVar19)" ( (binary_expression "(uint)(puVar22 + (int)puVar17 < puVar22) + iVar19" (call_expression "(uint)(puVar22 + (int)puVar17 < puVar22)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar22 + (int)puVar17 < puVar22)" ( (binary_expression "puVar22 + (int)puVar17 < puVar22" (binary_expression "puVar22 + (int)puVar17" identifier + (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier)) < identifier) ))) + identifier) )))) ;) (if_statement "if ((int)puVar6 <= (int)puVar11) {\n          uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17);\n          iVar14 = 0;\n          if (puVar6 == puVar11) goto LAB_001196c0;\nLAB_0011940c:\n          uVar8 = this->symtab_->output_count_;\n          piVar21 = (int *)((int)piVar21 + (int)puVar17);\n          if (uVar8 < 0x20000000) {\n            puVar24 = (uchar *)(uVar8 << 2);\n            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);\n            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);\n            uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;\n            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;\n            uVar9 = pIVar26->command_line_key_ - 1;\n            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);\n            *(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n            oview[0] = '\x02';\n            oview[1] = '\0';\n            oview[2] = '\0';\n            oview[3] = '\0';\n            oview[0xc] = '\0';\n            oview[0xd] = '\0';\n            oview[0xe] = '\0';\n            oview[0xf] = '\0';\n            *(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;\n            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);\n            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);\n            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;\n            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;\n            uVar15 = 0x59f;\n            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }\n            piVar12 = (int *)((int)piVar21 + (int)puVar22);\n            puVar10 = global_syms;\n            if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(global_syms);\n            pOVar7 = pIVar26->got_plt_section_;\n            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;\n            if (-1 < iVar1 << 2) goto LAB_00119650;\n            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;\n            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;\n            if (-1 < iVar1 << 1) goto LAB_00119634;\n            puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);\n            if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar23 = *(undefined4 **)(puVar11 + 0x30);\n          piVar21 = (int *)*puVar23;\n          if (piVar21 == (int *)puVar23[1]) {\n            return;\n          }\n          piVar12 = (int *)*piVar21;\n          if ((int)puVar17 - iVar14 != piVar12[3]) {\n            iVar1 = *(int *)(puVar6 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar12[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar6 + 0x318cd8);\n          goto LAB_00119868;\n        }" if (parenthesized_expression "((int)puVar6 <= (int)puVar11)" ( (binary_expression "(int)puVar6 <= (int)puVar11" (cast_expression "(int)puVar6" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17);\n          iVar14 = 0;\n          if (puVar6 == puVar11) goto LAB_001196c0;\nLAB_0011940c:\n          uVar8 = this->symtab_->output_count_;\n          piVar21 = (int *)((int)piVar21 + (int)puVar17);\n          if (uVar8 < 0x20000000) {\n            puVar24 = (uchar *)(uVar8 << 2);\n            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);\n            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);\n            uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;\n            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;\n            uVar9 = pIVar26->command_line_key_ - 1;\n            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);\n            *(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n            oview[0] = '\x02';\n            oview[1] = '\0';\n            oview[2] = '\0';\n            oview[3] = '\0';\n            oview[0xc] = '\0';\n            oview[0xd] = '\0';\n            oview[0xe] = '\0';\n            oview[0xf] = '\0';\n            *(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;\n            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);\n            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);\n            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;\n            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;\n            uVar15 = 0x59f;\n            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }\n            piVar12 = (int *)((int)piVar21 + (int)puVar22);\n            puVar10 = global_syms;\n            if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(global_syms);\n            pOVar7 = pIVar26->got_plt_section_;\n            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;\n            if (-1 < iVar1 << 2) goto LAB_00119650;\n            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;\n            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;\n            if (-1 < iVar1 << 1) goto LAB_00119634;\n            puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);\n            if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar23 = *(undefined4 **)(puVar11 + 0x30);\n          piVar21 = (int *)*puVar23;\n          if (piVar21 == (int *)puVar23[1]) {\n            return;\n          }\n          piVar12 = (int *)*piVar21;\n          if ((int)puVar17 - iVar14 != piVar12[3]) {\n            iVar1 = *(int *)(puVar6 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar12[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar6 + 0x318cd8);\n          goto LAB_00119868;\n        }" { (expression_statement "uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17);" (assignment_expression "uVar8 = (uint)(in_t1 < puVar22 + (int)puVar17)" identifier = (call_expression "(uint)(in_t1 < puVar22 + (int)puVar17)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(in_t1 < puVar22 + (int)puVar17)" ( (binary_expression "in_t1 < puVar22 + (int)puVar17" identifier < (binary_expression "puVar22 + (int)puVar17" identifier + (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier))) )))) ;) (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" identifier = number_literal) ;) (if_statement "if (puVar6 == puVar11) goto LAB_001196c0;" if (parenthesized_expression "(puVar6 == puVar11)" ( (binary_expression "puVar6 == puVar11" identifier == identifier) )) (goto_statement "goto LAB_001196c0;" goto statement_identifier ;)) (labeled_statement "LAB_0011940c:\n          uVar8 = this->symtab_->output_count_;" statement_identifier : (expression_statement "uVar8 = this->symtab_->output_count_;" (assignment_expression "uVar8 = this->symtab_->output_count_" identifier = (field_expression "this->symtab_->output_count_" (field_expression "this->symtab_" identifier -> field_identifier) -> field_identifier)) ;)) (expression_statement "piVar21 = (int *)((int)piVar21 + (int)puVar17);" (assignment_expression "piVar21 = (int *)((int)piVar21 + (int)puVar17)" identifier = (cast_expression "(int *)((int)piVar21 + (int)puVar17)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar21 + (int)puVar17)" ( (binary_expression "(int)piVar21 + (int)puVar17" (cast_expression "(int)piVar21" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (if_statement "if (uVar8 < 0x20000000) {\n            puVar24 = (uchar *)(uVar8 << 2);\n            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);\n            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);\n            uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;\n            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;\n            uVar9 = pIVar26->command_line_key_ - 1;\n            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);\n            *(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n            oview[0] = '\x02';\n            oview[1] = '\0';\n            oview[2] = '\0';\n            oview[3] = '\0';\n            oview[0xc] = '\0';\n            oview[0xd] = '\0';\n            oview[0xe] = '\0';\n            oview[0xf] = '\0';\n            *(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;\n            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);\n            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);\n            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;\n            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;\n            uVar15 = 0x59f;\n            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }\n            piVar12 = (int *)((int)piVar21 + (int)puVar22);\n            puVar10 = global_syms;\n            if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(global_syms);\n            pOVar7 = pIVar26->got_plt_section_;\n            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;\n            if (-1 < iVar1 << 2) goto LAB_00119650;\n            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;\n            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;\n            if (-1 < iVar1 << 1) goto LAB_00119634;\n            puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);\n            if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }" if (parenthesized_expression "(uVar8 < 0x20000000)" ( (binary_expression "uVar8 < 0x20000000" identifier < number_literal) )) (compound_statement "{\n            puVar24 = (uchar *)(uVar8 << 2);\n            global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);\n            (*(code *)PTR_memset_00436850)(global_syms,0,puVar24);\n            uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;\n            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;\n            uVar9 = pIVar26->command_line_key_ - 1;\n            uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);\n            *(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n            oview[0] = '\x02';\n            oview[1] = '\0';\n            oview[2] = '\0';\n            oview[3] = '\0';\n            oview[0xc] = '\0';\n            oview[0xd] = '\0';\n            oview[0xe] = '\0';\n            oview[0xf] = '\0';\n            *(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;\n            puVar4 = write_input_files(this,oview,oview + 0x10,strtab);\n            puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);\n            if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;\n            if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;\n            uVar15 = 0x59f;\n            if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }\n            piVar12 = (int *)((int)piVar21 + (int)puVar22);\n            puVar10 = global_syms;\n            if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(global_syms);\n            pOVar7 = pIVar26->got_plt_section_;\n            iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;\n            if (-1 < iVar1 << 2) goto LAB_00119650;\n            iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;\n            iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;\n            if (-1 < iVar1 << 1) goto LAB_00119634;\n            puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);\n            if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }" { (expression_statement "puVar24 = (uchar *)(uVar8 << 2);" (assignment_expression "puVar24 = (uchar *)(uVar8 << 2)" identifier = (cast_expression "(uchar *)(uVar8 << 2)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar8 << 2)" ( (binary_expression "uVar8 << 2" identifier << number_literal) )))) ;) (expression_statement "global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24);" (assignment_expression "global_syms = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar24)" identifier = (cast_expression "(uint *)(*(code *)PTR_operator_new___004322dc)(puVar24)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_operator_new___004322dc)(puVar24)" (parenthesized_expression "(*(code *)PTR_operator_new___004322dc)" ( (pointer_expression "*(code *)PTR_operator_new___004322dc" * (cast_expression "(code *)PTR_operator_new___004322dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar24)" ( identifier ))))) ;) (expression_statement "(*(code *)PTR_memset_00436850)(global_syms,0,puVar24);" (call_expression "(*(code *)PTR_memset_00436850)(global_syms,0,puVar24)" (parenthesized_expression "(*(code *)PTR_memset_00436850)" ( (pointer_expression "*(code *)PTR_memset_00436850" * (cast_expression "(code *)PTR_memset_00436850" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(global_syms,0,puVar24)" ( identifier , number_literal , identifier ))) ;) (expression_statement "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2;" (binary_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start >> 2" (field_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_start" (field_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl" (binary_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_" (binary_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold" (binary_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std" (binary_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base<gold" (binary_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish -\n                    (int)(pIVar26->inputs_).\n                         super__Vector_base" (field_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl._M_finish" (field_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_>\n                         ._M_impl" (binary_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold::Incremental_input_entry*>_" (binary_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std::allocator<gold" (binary_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold::Incremental_input_entry*,_std" (assignment_expression "uVar3 = (int)(pIVar26->inputs_).\n                         super__Vector_base<gold" identifier = (binary_expression "(int)(pIVar26->inputs_).\n                         super__Vector_base<gold" (cast_expression "(int)(pIVar26->inputs_).\n                         super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "(pIVar26->inputs_).\n                         super__Vector_base" (parenthesized_expression "(pIVar26->inputs_)" ( (field_expression "pIVar26->inputs_" identifier -> field_identifier) )) . field_identifier)) < identifier)) (ERROR "::Incremental_input_entry" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Incremental_input_entry" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) - (cast_expression "(int)(pIVar26->inputs_).\n                         super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "(pIVar26->inputs_).\n                         super__Vector_base" (parenthesized_expression "(pIVar26->inputs_)" ( (field_expression "pIVar26->inputs_" identifier -> field_identifier) )) . field_identifier))) < identifier) (ERROR "::Incremental_input_entry" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Incremental_input_entry" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) >> number_literal) ;) (if_statement "if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;" if (parenthesized_expression "((strtab->key_to_offset_).size_ < pIVar26->command_line_key_)" ( (binary_expression "(strtab->key_to_offset_).size_ < pIVar26->command_line_key_" (field_expression "(strtab->key_to_offset_).size_" (parenthesized_expression "(strtab->key_to_offset_)" ( (field_expression "strtab->key_to_offset_" identifier -> field_identifier) )) . field_identifier) < (field_expression "pIVar26->command_line_key_" identifier -> field_identifier)) )) (goto_statement "goto LAB_001196a4;" goto statement_identifier ;)) (expression_statement "uVar9 = pIVar26->command_line_key_ - 1;" (assignment_expression "uVar9 = pIVar26->command_line_key_ - 1" identifier = (binary_expression "pIVar26->command_line_key_ - 1" (field_expression "pIVar26->command_line_key_" identifier -> field_identifier) - number_literal)) ;) (expression_statement "uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4);" (assignment_expression "uVar9 = *(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4)" identifier = (pointer_expression "*(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4)" * (cast_expression "(uint *)((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4)" ( (ERROR "(int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std::allocator<int>_>,_std::allocator<std::vector<int,_std::allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std::" (comma_expression "(int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int,_std" (binary_expression "(int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std::vector<int" (binary_expression "(int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base<std" (cast_expression "(int)(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "(strtab->key_to_offset_).chunks_.\n                                   super__Vector_base" (field_expression "(strtab->key_to_offset_).chunks_" (parenthesized_expression "(strtab->key_to_offset_)" ( (field_expression "strtab->key_to_offset_" identifier -> field_identifier) )) . field_identifier) . field_identifier)) < identifier) (ERROR "::vector" : : identifier) < identifier) , identifier) : : (binary_expression "allocator<int>_>,_std" (binary_expression "allocator<int>_" (binary_expression "allocator<int" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "vector<int,_std" (binary_expression "vector<int" identifier < identifier) , identifier) : : (comma_expression "allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int,_std" (binary_expression "allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base<int" (field_expression "allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd].\n                                   super__Vector_base" (subscript_expression "allocator<int>_>_>_>\n                                   ._M_impl._M_start[uVar9 >> 0xd]" (field_expression "allocator<int>_>_>_>\n                                   ._M_impl._M_start" (field_expression "allocator<int>_>_>_>\n                                   ._M_impl" (binary_expression "allocator<int>_>_>_" (binary_expression "allocator<int>_>_" (binary_expression "allocator<int>_" (binary_expression "allocator<int" identifier < identifier) > identifier) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) [ (binary_expression "uVar9 >> 0xd" identifier >> number_literal) ]) . field_identifier) < identifier) , identifier) : :) (binary_expression "allocator<int>_>._M_impl._M_start +\n                             (uVar9 & 0x1fff) * 4" (field_expression "allocator<int>_>._M_impl._M_start" (field_expression "allocator<int>_>._M_impl" (binary_expression "allocator<int>_" (binary_expression "allocator<int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) + (binary_expression "(uVar9 & 0x1fff) * 4" (parenthesized_expression "(uVar9 & 0x1fff)" ( (binary_expression "uVar9 & 0x1fff" identifier & number_literal) )) * number_literal)) ))))) ;) (expression_statement "*(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "*(uint *)(oview + 4) =\n                 (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (pointer_expression "*(uint *)(oview + 4)" * (cast_expression "(uint *)(oview + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(oview + 4)" ( (binary_expression "oview + 4" identifier + number_literal) )))) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "oview[0] = '\x02';" (assignment_expression "oview[0] = '\x02'" (subscript_expression "oview[0]" identifier [ number_literal ]) = (char_literal "'\x02'" ' escape_sequence ')) ;) (expression_statement "oview[1] = '\0';" (assignment_expression "oview[1] = '\0'" (subscript_expression "oview[1]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "oview[2] = '\0';" (assignment_expression "oview[2] = '\0'" (subscript_expression "oview[2]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "oview[3] = '\0';" (assignment_expression "oview[3] = '\0'" (subscript_expression "oview[3]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "oview[0xc] = '\0';" (assignment_expression "oview[0xc] = '\0'" (subscript_expression "oview[0xc]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "oview[0xd] = '\0';" (assignment_expression "oview[0xd] = '\0'" (subscript_expression "oview[0xd]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "oview[0xe] = '\0';" (assignment_expression "oview[0xe] = '\0'" (subscript_expression "oview[0xe]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "oview[0xf] = '\0';" (assignment_expression "oview[0xf] = '\0'" (subscript_expression "oview[0xf]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "*(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000;" (assignment_expression "*(uint *)(oview + 8) =\n                 (((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000" (pointer_expression "*(uint *)(oview + 8)" * (cast_expression "(uint *)(oview + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(oview + 8)" ( (binary_expression "oview + 8" identifier + number_literal) )))) = (binary_expression "(((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10)" ( (binary_expression "(uVar9 >> 0x10) << 0x18 | (uVar9 >> 0x18) << 0x10" (binary_expression "(uVar9 >> 0x10) << 0x18" (parenthesized_expression "(uVar9 >> 0x10)" ( (binary_expression "uVar9 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar9 >> 0x18) << 0x10" (parenthesized_expression "(uVar9 >> 0x18)" ( (binary_expression "uVar9 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff)" ( (binary_expression "(uVar9 & 0xff) << 8 | uVar9 >> 8 & 0xff" (binary_expression "(uVar9 & 0xff) << 8" (parenthesized_expression "(uVar9 & 0xff)" ( (binary_expression "uVar9 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar9 >> 8 & 0xff" (binary_expression "uVar9 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "puVar4 = write_input_files(this,oview,oview + 0x10,strtab);" (assignment_expression "puVar4 = write_input_files(this,oview,oview + 0x10,strtab)" identifier = (call_expression "write_input_files(this,oview,oview + 0x10,strtab)" identifier (argument_list "(this,oview,oview + 0x10,strtab)" ( identifier , identifier , (binary_expression "oview + 0x10" identifier + number_literal) , identifier )))) ;) (expression_statement "puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8);" (assignment_expression "puVar4 = write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8)" identifier = (call_expression "write_info_blocks(this,oview,puVar4,strtab,global_syms,uVar8)" identifier (argument_list "(this,oview,puVar4,strtab,global_syms,uVar8)" ( identifier , identifier , identifier , identifier , identifier , identifier )))) ;) (if_statement "if ((int)(puVar4 + -(int)oview) >> 0x1f != iVar1) goto LAB_0011969c;" if (parenthesized_expression "((int)(puVar4 + -(int)oview) >> 0x1f != iVar1)" ( (binary_expression "(int)(puVar4 + -(int)oview) >> 0x1f != iVar1" (binary_expression "(int)(puVar4 + -(int)oview) >> 0x1f" (cast_expression "(int)(puVar4 + -(int)oview)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar4 + -(int)oview)" ( (binary_expression "puVar4 + -(int)oview" identifier + (unary_expression "-(int)oview" - (cast_expression "(int)oview" ( (type_descriptor "int" primitive_type) ) identifier))) ))) >> number_literal) != identifier) )) (goto_statement "goto LAB_0011969c;" goto statement_identifier ;)) (if_statement "if (puVar4 + -(int)oview != puVar20) goto LAB_0011969c;" if (parenthesized_expression "(puVar4 + -(int)oview != puVar20)" ( (binary_expression "puVar4 + -(int)oview != puVar20" (binary_expression "puVar4 + -(int)oview" identifier + (unary_expression "-(int)oview" - (cast_expression "(int)oview" ( (type_descriptor "int" primitive_type) ) identifier))) != identifier) )) (goto_statement "goto LAB_0011969c;" goto statement_identifier ;)) (expression_statement "uVar15 = 0x59f;" (assignment_expression "uVar15 = 0x59f" identifier = number_literal) ;) (if_statement "if ((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }" if (parenthesized_expression "((uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22))" ( (binary_expression "(uVar8 >> 0x1e != uVar2) || (puVar24 != puVar22)" (parenthesized_expression "(uVar8 >> 0x1e != uVar2)" ( (binary_expression "uVar8 >> 0x1e != uVar2" (binary_expression "uVar8 >> 0x1e" identifier >> number_literal) != identifier) )) || (parenthesized_expression "(puVar24 != puVar22)" ( (binary_expression "puVar24 != puVar22" identifier != identifier) ))) )) (compound_statement "{\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );\n            }" { (do_statement "do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              } while( true );" do (compound_statement "{\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar15 = 0x59c;\n              }" { (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar15,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fcc" identifier + number_literal) , identifier , (binary_expression "PTR_s_alize_xindex_004323b4 + -0x37c8" identifier + number_literal) ))) ;) (labeled_statement "LAB_0011969c:\n                uVar15 = 0x59c;" statement_identifier : (expression_statement "uVar15 = 0x59c;" (assignment_expression "uVar15 = 0x59c" identifier = number_literal) ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "piVar12 = (int *)((int)piVar21 + (int)puVar22);" (assignment_expression "piVar12 = (int *)((int)piVar21 + (int)puVar22)" identifier = (cast_expression "(int *)((int)piVar21 + (int)puVar22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar21 + (int)puVar22)" ( (binary_expression "(int)piVar21 + (int)puVar22" (cast_expression "(int)piVar21" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar22" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "puVar10 = global_syms;" (assignment_expression "puVar10 = global_syms" identifier = identifier) ;) (if_statement "if (uVar8 != 0) {\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }" if (parenthesized_expression "(uVar8 != 0)" ( (binary_expression "uVar8 != 0" identifier != number_literal) )) (compound_statement "{\n              do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);\n            }" { (do_statement "do {\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              } while (piVar16 != piVar12);" do (compound_statement "{\n                uVar2 = *puVar10;\n                piVar16 = piVar21 + 1;\n                *piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar10 = puVar10 + 1;\n                piVar21 = piVar16;\n              }" { (expression_statement "uVar2 = *puVar10;" (assignment_expression "uVar2 = *puVar10" identifier = (pointer_expression "*puVar10" * identifier)) ;) (expression_statement "piVar16 = piVar21 + 1;" (assignment_expression "piVar16 = piVar21 + 1" identifier = (binary_expression "piVar21 + 1" identifier + number_literal)) ;) (expression_statement "*piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "*piVar21 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (pointer_expression "*piVar21" * identifier) = (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" ( (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" ( (binary_expression "uVar2 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" ( (binary_expression "uVar2 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" ( (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" ( (binary_expression "uVar2 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "puVar10 = puVar10 + 1;" (assignment_expression "puVar10 = puVar10 + 1" identifier = (binary_expression "puVar10 + 1" identifier + number_literal)) ;) (expression_statement "piVar21 = piVar16;" (assignment_expression "piVar21 = piVar16" identifier = identifier) ;) }) while (parenthesized_expression "(piVar16 != piVar12)" ( (binary_expression "piVar16 != piVar12" identifier != identifier) )) ;) })) (expression_statement "(*(code *)PTR_operator_delete___004323dc)(global_syms);" (call_expression "(*(code *)PTR_operator_delete___004323dc)(global_syms)" (parenthesized_expression "(*(code *)PTR_operator_delete___004323dc)" ( (pointer_expression "*(code *)PTR_operator_delete___004323dc" * (cast_expression "(code *)PTR_operator_delete___004323dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(global_syms)" ( identifier ))) ;) (expression_statement "pOVar7 = pIVar26->got_plt_section_;" (assignment_expression "pOVar7 = pIVar26->got_plt_section_" identifier = (field_expression "pIVar26->got_plt_section_" identifier -> field_identifier)) ;) (expression_statement "iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20;" (assignment_expression "iVar1 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20" identifier = (pointer_expression "*(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20" * (cast_expression "(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20" & (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.field_0x20" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data" (parenthesized_expression "(pOVar7->super_Output_section_data_build)" ( (field_expression "pOVar7->super_Output_section_data_build" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier))))) ;) (if_statement "if (-1 < iVar1 << 2) goto LAB_00119650;" if (parenthesized_expression "(-1 < iVar1 << 2)" ( (binary_expression "-1 < iVar1 << 2" number_literal < (binary_expression "iVar1 << 2" identifier << number_literal)) )) (goto_statement "goto LAB_00119650;" goto statement_identifier ;)) (expression_statement "iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_;" (assignment_expression "iVar14 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_" identifier = (pointer_expression "*(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_" * (cast_expression "(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_" & (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.offset_" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data" (parenthesized_expression "(pOVar7->super_Output_section_data_build)" ( (field_expression "pOVar7->super_Output_section_data_build" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier))))) ;) (expression_statement "iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_;" (assignment_expression "iVar19 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_" identifier = (cast_expression "(int)(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_" ( (type_descriptor "int" primitive_type) ) (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data.offset_" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                          super_Output_data" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data" (parenthesized_expression "(pOVar7->super_Output_section_data_build)" ( (field_expression "pOVar7->super_Output_section_data_build" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier))) ;) (if_statement "if (-1 < iVar1 << 1) goto LAB_00119634;" if (parenthesized_expression "(-1 < iVar1 << 1)" ( (binary_expression "-1 < iVar1 << 1" number_literal < (binary_expression "iVar1 << 1" identifier << number_literal)) )) (goto_statement "goto LAB_00119634;" goto statement_identifier ;)) (expression_statement "puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4);" (assignment_expression "puVar20 = *(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4)" identifier = (pointer_expression "*(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4)" * (cast_expression "(uchar **)\n                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4)" ( (binary_expression "(int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_ + 4" (cast_expression "(int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_" & (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data.data_size_" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data.\n                              super_Output_data" (field_expression "(pOVar7->super_Output_section_data_build).super_Output_section_data" (parenthesized_expression "(pOVar7->super_Output_section_data_build)" ( (field_expression "pOVar7->super_Output_section_data_build" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier))) + number_literal) ))))) ;) (if_statement "if (-1 < iVar14) {\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }" if (parenthesized_expression "(-1 < iVar14)" ( (binary_expression "-1 < iVar14" number_literal < identifier) )) (compound_statement "{\n              in_t1 = puVar20 + iVar19;\n              iVar14 = (uint)(in_t1 < puVar20) + iVar14;\n              if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }" { (expression_statement "in_t1 = puVar20 + iVar19;" (assignment_expression "in_t1 = puVar20 + iVar19" identifier = (binary_expression "puVar20 + iVar19" identifier + identifier)) ;) (expression_statement "iVar14 = (uint)(in_t1 < puVar20) + iVar14;" (assignment_expression "iVar14 = (uint)(in_t1 < puVar20) + iVar14" identifier = (binary_expression "(uint)(in_t1 < puVar20) + iVar14" (call_expression "(uint)(in_t1 < puVar20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(in_t1 < puVar20)" ( (binary_expression "in_t1 < puVar20" identifier < identifier) ))) + identifier)) ;) (if_statement "if (iVar14 <= *(int *)&of->file_size_) {\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }" if (parenthesized_expression "(iVar14 <= *(int *)&of->file_size_)" ( (binary_expression "iVar14 <= *(int *)&of->file_size_" identifier <= (pointer_expression "*(int *)&of->file_size_" * (cast_expression "(int *)&of->file_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&of->file_size_" & (field_expression "of->file_size_" identifier -> field_identifier))))) )) (compound_statement "{\n                if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }" { (if_statement "if (*(int *)&of->file_size_ == iVar14) goto LAB_0011966c;" if (parenthesized_expression "(*(int *)&of->file_size_ == iVar14)" ( (binary_expression "*(int *)&of->file_size_ == iVar14" (pointer_expression "*(int *)&of->file_size_" * (cast_expression "(int *)&of->file_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&of->file_size_" & (field_expression "of->file_size_" identifier -> field_identifier)))) == identifier) )) (goto_statement "goto LAB_0011966c;" goto statement_identifier ;)) (goto_statement "goto LAB_001195dc;" goto statement_identifier ;) })) })) (goto_statement "goto LAB_00119628;" goto statement_identifier ;) })) (expression_statement "puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8;" (assignment_expression "puVar6 = PTR___cxa_throw_bad_array_new_length_004322e8" identifier = identifier) ;) (expression_statement "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();" (call_expression "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)()" (parenthesized_expression "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)" ( (pointer_expression "*(code *)PTR___cxa_throw_bad_array_new_length_004322e8" * (cast_expression "(code *)PTR___cxa_throw_bad_array_new_length_004322e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puVar23 = *(undefined4 **)(puVar11 + 0x30);" (assignment_expression "puVar23 = *(undefined4 **)(puVar11 + 0x30)" identifier = (pointer_expression "*(undefined4 **)(puVar11 + 0x30)" * (cast_expression "(undefined4 **)(puVar11 + 0x30)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x30)" ( (binary_expression "puVar11 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "piVar21 = (int *)*puVar23;" (assignment_expression "piVar21 = (int *)*puVar23" identifier = (cast_expression "(int *)*puVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar23" * identifier))) ;) (if_statement "if (piVar21 == (int *)puVar23[1]) {\n            return;\n          }" if (parenthesized_expression "(piVar21 == (int *)puVar23[1])" ( (binary_expression "piVar21 == (int *)puVar23[1]" identifier == (cast_expression "(int *)puVar23[1]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar23[1]" identifier [ number_literal ]))) )) (compound_statement "{\n            return;\n          }" { (return_statement "return;" return ;) })) (expression_statement "piVar12 = (int *)*piVar21;" (assignment_expression "piVar12 = (int *)*piVar21" identifier = (cast_expression "(int *)*piVar21" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar21" * identifier))) ;) (if_statement "if ((int)puVar17 - iVar14 != piVar12[3]) {\n            iVar1 = *(int *)(puVar6 + 0x318cd8);\n            goto LAB_00119850;\n          }" if (parenthesized_expression "((int)puVar17 - iVar14 != piVar12[3])" ( (binary_expression "(int)puVar17 - iVar14 != piVar12[3]" (binary_expression "(int)puVar17 - iVar14" (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier) - identifier) != (subscript_expression "piVar12[3]" identifier [ number_literal ])) )) (compound_statement "{\n            iVar1 = *(int *)(puVar6 + 0x318cd8);\n            goto LAB_00119850;\n          }" { (expression_statement "iVar1 = *(int *)(puVar6 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar6 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar6 + 0x318cd8)" * (cast_expression "(int *)(puVar6 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x318cd8)" ( (binary_expression "puVar6 + 0x318cd8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00119850;" goto statement_identifier ;) })) (expression_statement "uVar2 = piVar12[1];" (assignment_expression "uVar2 = piVar12[1]" identifier = (subscript_expression "piVar12[1]" identifier [ number_literal ])) ;) (if_statement "if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;" if (parenthesized_expression "(uVar2 <= *(uint *)(iVar19 + 0x28))" ( (binary_expression "uVar2 <= *(uint *)(iVar19 + 0x28)" identifier <= (pointer_expression "*(uint *)(iVar19 + 0x28)" * (cast_expression "(uint *)(iVar19 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x28)" ( (binary_expression "iVar19 + 0x28" identifier + number_literal) ))))) )) (goto_statement "goto LAB_0011977c;" goto statement_identifier ;)) (expression_statement "iVar1 = *(int *)(puVar6 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar6 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar6 + 0x318cd8)" * (cast_expression "(int *)(puVar6 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x318cd8)" ( (binary_expression "puVar6 + 0x318cd8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00119868;" goto statement_identifier ;) })) })) })) })) (labeled_statement "LAB_00119628:\n  pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);" statement_identifier : (expression_statement "pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54)" identifier = (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" ( (binary_expression "PTR_LAB_00434040 + 0x2f54" identifier + number_literal) )))) ;)) (labeled_statement "LAB_0011962c:\n  while( true ) {\n    (*pcVar25)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = this;\n    unaff_s6 = of;\nLAB_00119650:\n    of = unaff_s6;\n    this = unaff_s4;\n    iVar19 = 0xe3;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (uchar *)(uint)(*(uchar **)((int)&of->file_size_ + 4) < in_t1);\n    if (in_t1 == (uchar *)0x0) break;\n    pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" statement_identifier : (while_statement "while( true ) {\n    (*pcVar25)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = this;\n    unaff_s6 = of;\nLAB_00119650:\n    of = unaff_s6;\n    this = unaff_s4;\n    iVar19 = 0xe3;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (uchar *)(uint)(*(uchar **)((int)&of->file_size_ + 4) < in_t1);\n    if (in_t1 == (uchar *)0x0) break;\n    pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    (*pcVar25)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = this;\n    unaff_s6 = of;\nLAB_00119650:\n    of = unaff_s6;\n    this = unaff_s4;\n    iVar19 = 0xe3;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (uchar *)(uint)(*(uchar **)((int)&of->file_size_ + 4) < in_t1);\n    if (in_t1 == (uchar *)0x0) break;\n    pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" { (expression_statement "(*pcVar25)();" (call_expression "(*pcVar25)()" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);" statement_identifier : (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + -0x36c8" identifier + number_literal) ))) ;)) (expression_statement "unaff_s4 = this;" (assignment_expression "unaff_s4 = this" identifier = identifier) ;) (expression_statement "unaff_s6 = of;" (assignment_expression "unaff_s6 = of" identifier = identifier) ;) (labeled_statement "LAB_00119650:\n    of = unaff_s6;" statement_identifier : (expression_statement "of = unaff_s6;" (assignment_expression "of = unaff_s6" identifier = identifier) ;)) (expression_statement "this = unaff_s4;" (assignment_expression "this = unaff_s4" identifier = identifier) ;) (expression_statement "iVar19 = 0xe3;" (assignment_expression "iVar19 = 0xe3" identifier = number_literal) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + -0x36bc" identifier + number_literal) ))) ;) (labeled_statement "LAB_0011966c:\n    in_t1 = (uchar *)(uint)(*(uchar **)((int)&of->file_size_ + 4) < in_t1);" statement_identifier : (expression_statement "in_t1 = (uchar *)(uint)(*(uchar **)((int)&of->file_size_ + 4) < in_t1);" (assignment_expression "in_t1 = (uchar *)(uint)(*(uchar **)((int)&of->file_size_ + 4) < in_t1)" identifier = (cast_expression "(uchar *)(uint)(*(uchar **)((int)&of->file_size_ + 4) < in_t1)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(uint)(*(uchar **)((int)&of->file_size_ + 4) < in_t1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(uchar **)((int)&of->file_size_ + 4) < in_t1)" ( (binary_expression "*(uchar **)((int)&of->file_size_ + 4) < in_t1" (pointer_expression "*(uchar **)((int)&of->file_size_ + 4)" * (cast_expression "(uchar **)((int)&of->file_size_ + 4)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&of->file_size_ + 4)" ( (binary_expression "(int)&of->file_size_ + 4" (cast_expression "(int)&of->file_size_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&of->file_size_" & (field_expression "of->file_size_" identifier -> field_identifier))) + number_literal) )))) < identifier) ))))) ;)) (if_statement "if (in_t1 == (uchar *)0x0) break;" if (parenthesized_expression "(in_t1 == (uchar *)0x0)" ( (binary_expression "in_t1 == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54)" identifier = (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" ( (binary_expression "PTR_LAB_00434040 + 0x2f54" identifier + number_literal) )))) ;) }))) (labeled_statement "LAB_001195dc:\n  write_got_plt(this,of->base_ + iVar19,in_stack_00000010);" statement_identifier : (expression_statement "write_got_plt(this,of->base_ + iVar19,in_stack_00000010);" (call_expression "write_got_plt(this,of->base_ + iVar19,in_stack_00000010)" identifier (argument_list "(this,of->base_ + iVar19,in_stack_00000010)" ( identifier , (binary_expression "of->base_ + iVar19" (field_expression "of->base_" identifier -> field_identifier) + identifier) , identifier ))) ;)) (return_statement "return;" return ;) (labeled_statement "LAB_001196a4:\n  iVar14 = 0x108;" statement_identifier : (expression_statement "iVar14 = 0x108;" (assignment_expression "iVar14 = 0x108" identifier = number_literal) ;)) (expression_statement "puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);" (assignment_expression "puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578)" identifier = (cast_expression "(undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_alize_xindex_004323b4 + -0x3578)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x3578" identifier + number_literal) )))) ;) (expression_statement "puVar11 = PTR_LAB_0043220c + 0x46d4;" (assignment_expression "puVar11 = PTR_LAB_0043220c + 0x46d4" identifier = (binary_expression "PTR_LAB_0043220c + 0x46d4" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)();" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)()" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "uVar8 = extraout_v1;" (assignment_expression "uVar8 = extraout_v1" identifier = identifier) ;) (labeled_statement "LAB_001196c0:\n  if (uVar8 != 0) goto code_r0x001196c8;" statement_identifier : (if_statement "if (uVar8 != 0) goto code_r0x001196c8;" if (parenthesized_expression "(uVar8 != 0)" ( (binary_expression "uVar8 != 0" identifier != number_literal) )) (goto_statement "goto code_r0x001196c8;" goto statement_identifier ;))) (goto_statement "goto LAB_0011940c;" goto statement_identifier ;) (labeled_statement "code_r0x001196c8:\n  pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);" statement_identifier : (expression_statement "pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar25 = (code *)(PTR_LAB_00434040 + 0x2f54)" identifier = (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" ( (binary_expression "PTR_LAB_00434040 + 0x2f54" identifier + number_literal) )))) ;)) (goto_statement "goto LAB_0011962c;" goto statement_identifier ;) (while_statement "while( true ) {\n    uVar2 = piVar12[1];\n    iVar1 = *(int *)(puVar6 + 0x318cd8);\n    puVar17 = puVar17 + 6;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar15 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar5 = (**(code **)(*piVar12 + 8))(piVar12);\n    iVar1 = *piVar21;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar5 = uVar5 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar5 = uVar5 | 0x4000;\n    }\n    iVar13 = piVar12[6];\n    piVar16 = (int *)puVar23[1];\n    piVar21 = piVar21 + 1;\n    *puVar17 = uVar15;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar12[7];\n    *(ushort *)(puVar17 + 5) = uVar5;\n    puVar17[3] = iVar13;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar13 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar16 == piVar21) {\n      return;\n    }\n    piVar12 = (int *)*piVar21;\n    iVar1 = *(int *)(puVar6 + 0x318cd8);\n    if ((int)(puVar17 + 6) - iVar14 != piVar12[3]) goto LAB_00119850;\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    uVar2 = piVar12[1];\n    iVar1 = *(int *)(puVar6 + 0x318cd8);\n    puVar17 = puVar17 + 6;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar15 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar5 = (**(code **)(*piVar12 + 8))(piVar12);\n    iVar1 = *piVar21;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar5 = uVar5 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar5 = uVar5 | 0x4000;\n    }\n    iVar13 = piVar12[6];\n    piVar16 = (int *)puVar23[1];\n    piVar21 = piVar21 + 1;\n    *puVar17 = uVar15;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar12[7];\n    *(ushort *)(puVar17 + 5) = uVar5;\n    puVar17[3] = iVar13;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar13 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar16 == piVar21) {\n      return;\n    }\n    piVar12 = (int *)*piVar21;\n    iVar1 = *(int *)(puVar6 + 0x318cd8);\n    if ((int)(puVar17 + 6) - iVar14 != piVar12[3]) goto LAB_00119850;\n  }" { (expression_statement "uVar2 = piVar12[1];" (assignment_expression "uVar2 = piVar12[1]" identifier = (subscript_expression "piVar12[1]" identifier [ number_literal ])) ;) (expression_statement "iVar1 = *(int *)(puVar6 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar6 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar6 + 0x318cd8)" * (cast_expression "(int *)(puVar6 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x318cd8)" ( (binary_expression "puVar6 + 0x318cd8" identifier + number_literal) ))))) ;) (expression_statement "puVar17 = puVar17 + 6;" (assignment_expression "puVar17 = puVar17 + 6" identifier = (binary_expression "puVar17 + 6" identifier + number_literal)) ;) (if_statement "if (*(uint *)(iVar19 + 0x28) < uVar2) break;" if (parenthesized_expression "(*(uint *)(iVar19 + 0x28) < uVar2)" ( (binary_expression "*(uint *)(iVar19 + 0x28) < uVar2" (pointer_expression "*(uint *)(iVar19 + 0x28)" * (cast_expression "(uint *)(iVar19 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x28)" ( (binary_expression "iVar19 + 0x28" identifier + number_literal) )))) < identifier) )) (break_statement "break;" break ;)) (labeled_statement "LAB_0011977c:\n    uVar15 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);" statement_identifier : (expression_statement "uVar15 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);" (assignment_expression "uVar15 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" identifier = (pointer_expression "*(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" * (cast_expression "(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" ( (binary_expression "*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4" (pointer_expression "*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" * (cast_expression "(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" ( (binary_expression "*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc" (pointer_expression "*(int *)(iVar19 + 0x1c)" * (cast_expression "(int *)(iVar19 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x1c)" ( (binary_expression "iVar19 + 0x1c" identifier + number_literal) )))) + (binary_expression "(uVar2 - 1 >> 0xd) * 0xc" (parenthesized_expression "(uVar2 - 1 >> 0xd)" ( (binary_expression "uVar2 - 1 >> 0xd" (binary_expression "uVar2 - 1" identifier - number_literal) >> number_literal) )) * number_literal)) )))) + (binary_expression "(uVar2 - 1 & 0x1fff) * 4" (parenthesized_expression "(uVar2 - 1 & 0x1fff)" ( (binary_expression "uVar2 - 1 & 0x1fff" (binary_expression "uVar2 - 1" identifier - number_literal) & number_literal) )) * number_literal)) ))))) ;)) (expression_statement "uVar5 = (**(code **)(*piVar12 + 8))(piVar12);" (assignment_expression "uVar5 = (**(code **)(*piVar12 + 8))(piVar12)" identifier = (call_expression "(**(code **)(*piVar12 + 8))(piVar12)" (parenthesized_expression "(**(code **)(*piVar12 + 8))" ( (pointer_expression "**(code **)(*piVar12 + 8)" * (pointer_expression "*(code **)(*piVar12 + 8)" * (cast_expression "(code **)(*piVar12 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar12 + 8)" ( (binary_expression "*piVar12 + 8" (pointer_expression "*piVar12" * identifier) + number_literal) ))))) )) (argument_list "(piVar12)" ( identifier )))) ;) (expression_statement "iVar1 = *piVar21;" (assignment_expression "iVar1 = *piVar21" identifier = (pointer_expression "*piVar21" * identifier)) ;) (if_statement "if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar5 = uVar5 | 0x8000;\n    }" if (parenthesized_expression "(*(char *)(iVar1 + 0x20) != '\0')" ( (binary_expression "*(char *)(iVar1 + 0x20) != '\0'" (pointer_expression "*(char *)(iVar1 + 0x20)" * (cast_expression "(char *)(iVar1 + 0x20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x20)" ( (binary_expression "iVar1 + 0x20" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      uVar5 = uVar5 | 0x8000;\n    }" { (expression_statement "uVar5 = uVar5 | 0x8000;" (assignment_expression "uVar5 = uVar5 | 0x8000" identifier = (binary_expression "uVar5 | 0x8000" identifier | number_literal)) ;) })) (if_statement "if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar5 = uVar5 | 0x4000;\n    }" if (parenthesized_expression "(*(char *)(iVar1 + 0x21) != '\0')" ( (binary_expression "*(char *)(iVar1 + 0x21) != '\0'" (pointer_expression "*(char *)(iVar1 + 0x21)" * (cast_expression "(char *)(iVar1 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x21)" ( (binary_expression "iVar1 + 0x21" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      uVar5 = uVar5 | 0x4000;\n    }" { (expression_statement "uVar5 = uVar5 | 0x4000;" (assignment_expression "uVar5 = uVar5 | 0x4000" identifier = (binary_expression "uVar5 | 0x4000" identifier | number_literal)) ;) })) (expression_statement "iVar13 = piVar12[6];" (assignment_expression "iVar13 = piVar12[6]" identifier = (subscript_expression "piVar12[6]" identifier [ number_literal ])) ;) (expression_statement "piVar16 = (int *)puVar23[1];" (assignment_expression "piVar16 = (int *)puVar23[1]" identifier = (cast_expression "(int *)puVar23[1]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar23[1]" identifier [ number_literal ]))) ;) (expression_statement "piVar21 = piVar21 + 1;" (assignment_expression "piVar21 = piVar21 + 1" identifier = (binary_expression "piVar21 + 1" identifier + number_literal)) ;) (expression_statement "*puVar17 = uVar15;" (assignment_expression "*puVar17 = uVar15" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "puVar17[1] = *(undefined4 *)(iVar1 + 0x10);" (assignment_expression "puVar17[1] = *(undefined4 *)(iVar1 + 0x10)" (subscript_expression "puVar17[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined4 *)(iVar1 + 0x10)" * (cast_expression "(undefined4 *)(iVar1 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x10)" ( (binary_expression "iVar1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "iVar18 = piVar12[7];" (assignment_expression "iVar18 = piVar12[7]" identifier = (subscript_expression "piVar12[7]" identifier [ number_literal ])) ;) (expression_statement "*(ushort *)(puVar17 + 5) = uVar5;" (assignment_expression "*(ushort *)(puVar17 + 5) = uVar5" (pointer_expression "*(ushort *)(puVar17 + 5)" * (cast_expression "(ushort *)(puVar17 + 5)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 5)" ( (binary_expression "puVar17 + 5" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar17[3] = iVar13;" (assignment_expression "puVar17[3] = iVar13" (subscript_expression "puVar17[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar17[4] = iVar18;" (assignment_expression "puVar17[4] = iVar18" (subscript_expression "puVar17[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar17[2] = iVar13 >> 0x1f;" (assignment_expression "puVar17[2] = iVar13 >> 0x1f" (subscript_expression "puVar17[2]" identifier [ number_literal ]) = (binary_expression "iVar13 >> 0x1f" identifier >> number_literal)) ;) (expression_statement "*(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);" (assignment_expression "*(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14)" (pointer_expression "*(short *)((int)puVar17 + 0x16)" * (cast_expression "(short *)((int)puVar17 + 0x16)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar17 + 0x16)" ( (binary_expression "(int)puVar17 + 0x16" (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (cast_expression "(short)*(undefined4 *)(iVar1 + 0x14)" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) (pointer_expression "*(undefined4 *)(iVar1 + 0x14)" * (cast_expression "(undefined4 *)(iVar1 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))))) ;) (if_statement "if (piVar16 == piVar21) {\n      return;\n    }" if (parenthesized_expression "(piVar16 == piVar21)" ( (binary_expression "piVar16 == piVar21" identifier == identifier) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "piVar12 = (int *)*piVar21;" (assignment_expression "piVar12 = (int *)*piVar21" identifier = (cast_expression "(int *)*piVar21" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar21" * identifier))) ;) (expression_statement "iVar1 = *(int *)(puVar6 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar6 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar6 + 0x318cd8)" * (cast_expression "(int *)(puVar6 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x318cd8)" ( (binary_expression "puVar6 + 0x318cd8" identifier + number_literal) ))))) ;) (if_statement "if ((int)(puVar17 + 6) - iVar14 != piVar12[3]) goto LAB_00119850;" if (parenthesized_expression "((int)(puVar17 + 6) - iVar14 != piVar12[3])" ( (binary_expression "(int)(puVar17 + 6) - iVar14 != piVar12[3]" (binary_expression "(int)(puVar17 + 6) - iVar14" (cast_expression "(int)(puVar17 + 6)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar17 + 6)" ( (binary_expression "puVar17 + 6" identifier + number_literal) ))) - identifier) != (subscript_expression "piVar12[3]" identifier [ number_literal ])) )) (goto_statement "goto LAB_00119850;" goto statement_identifier ;)) })) (labeled_statement "LAB_00119868:\n  pcVar25 = *(code **)(puVar6 + 0x318ce8);" statement_identifier : (expression_statement "pcVar25 = *(code **)(puVar6 + 0x318ce8);" (assignment_expression "pcVar25 = *(code **)(puVar6 + 0x318ce8)" identifier = (pointer_expression "*(code **)(puVar6 + 0x318ce8)" * (cast_expression "(code **)(puVar6 + 0x318ce8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x318ce8)" ( (binary_expression "puVar6 + 0x318ce8" identifier + number_literal) ))))) ;)) (expression_statement "iVar14 = *(int *)(puVar6 + 0x318b30) + 0x46d4;" (assignment_expression "iVar14 = *(int *)(puVar6 + 0x318b30) + 0x46d4" identifier = (binary_expression "*(int *)(puVar6 + 0x318b30) + 0x46d4" (pointer_expression "*(int *)(puVar6 + 0x318b30)" * (cast_expression "(int *)(puVar6 + 0x318b30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x318b30)" ( (binary_expression "puVar6 + 0x318b30" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar25)(iVar14,0x108,iVar1 + -0x3578);" (call_expression "(*pcVar25)(iVar14,0x108,iVar1 + -0x3578)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(iVar14,0x108,iVar1 + -0x3578)" ( identifier , number_literal , (binary_expression "iVar1 + -0x3578" identifier + number_literal) ))) ;) (expression_statement "puVar17 = (undefined4 *)**(int **)(iVar14 + 0x30);" (assignment_expression "puVar17 = (undefined4 *)**(int **)(iVar14 + 0x30)" identifier = (cast_expression "(undefined4 *)**(int **)(iVar14 + 0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(int **)(iVar14 + 0x30)" * (pointer_expression "*(int **)(iVar14 + 0x30)" * (cast_expression "(int **)(iVar14 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar14 + 0x30)" ( (binary_expression "iVar14 + 0x30" identifier + number_literal) ))))))) ;) (if_statement "if (puVar17 == (undefined4 *)(*(int **)(iVar14 + 0x30))[1]) {\n    return;\n  }" if (parenthesized_expression "(puVar17 == (undefined4 *)(*(int **)(iVar14 + 0x30))[1])" ( (binary_expression "puVar17 == (undefined4 *)(*(int **)(iVar14 + 0x30))[1]" identifier == (cast_expression "(undefined4 *)(*(int **)(iVar14 + 0x30))[1]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(*(int **)(iVar14 + 0x30))[1]" (parenthesized_expression "(*(int **)(iVar14 + 0x30))" ( (pointer_expression "*(int **)(iVar14 + 0x30)" * (cast_expression "(int **)(iVar14 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar14 + 0x30)" ( (binary_expression "iVar14 + 0x30" identifier + number_literal) )))) )) [ number_literal ]))) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "iVar1 = *(int *)(pcVar25 + 0x318b34);" (assignment_expression "iVar1 = *(int *)(pcVar25 + 0x318b34)" identifier = (pointer_expression "*(int *)(pcVar25 + 0x318b34)" * (cast_expression "(int *)(pcVar25 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x318b34)" ( (binary_expression "pcVar25 + 0x318b34" identifier + number_literal) ))))) ;) (expression_statement "piVar21 = (int *)*puVar17;" (assignment_expression "piVar21 = (int *)*puVar17" identifier = (cast_expression "(int *)*puVar17" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar17" * identifier))) ;) (expression_statement "uVar2 = (**(code **)(*piVar21 + 8))(piVar21);" (assignment_expression "uVar2 = (**(code **)(*piVar21 + 8))(piVar21)" identifier = (call_expression "(**(code **)(*piVar21 + 8))(piVar21)" (parenthesized_expression "(**(code **)(*piVar21 + 8))" ( (pointer_expression "**(code **)(*piVar21 + 8)" * (pointer_expression "*(code **)(*piVar21 + 8)" * (cast_expression "(code **)(*piVar21 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar21 + 8)" ( (binary_expression "*piVar21 + 8" (pointer_expression "*piVar21" * identifier) + number_literal) ))))) )) (argument_list "(piVar21)" ( identifier )))) ;) (if_statement "if (uVar2 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x00119950. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    (*(pcVar25 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return;\n  }" if (parenthesized_expression "(uVar2 < 6)" ( (binary_expression "uVar2 < 6" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x00119950. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    (*(pcVar25 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return;\n  }" { comment comment (expression_statement "(*(pcVar25 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();" (call_expression "(*(pcVar25 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))()" (parenthesized_expression "(*(pcVar25 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))" ( (pointer_expression "*(pcVar25 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950)" * (parenthesized_expression "(pcVar25 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950)" ( (binary_expression "pcVar25 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950" (binary_expression "pcVar25 + *(int *)(iVar1 + -0x49fc + uVar2 * 4)" identifier + (pointer_expression "*(int *)(iVar1 + -0x49fc + uVar2 * 4)" * (cast_expression "(int *)(iVar1 + -0x49fc + uVar2 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + -0x49fc + uVar2 * 4)" ( (binary_expression "iVar1 + -0x49fc + uVar2 * 4" (binary_expression "iVar1 + -0x49fc" identifier + number_literal) + (binary_expression "uVar2 * 4" identifier * number_literal)) ))))) + number_literal) ))) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) (expression_statement "uVar15 = 0x6f2;" (assignment_expression "uVar15 = 0x6f2" identifier = number_literal) ;) (do_statement "do {\n    iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fcc,uVar15,iVar1);\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar25 + 0x318b44))\n              (*(int *)(pcVar25 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar25 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar15 = 0x618;\n  } while( true );" do (compound_statement "{\n    iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fcc,uVar15,iVar1);\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar25 + 0x318b44))\n              (*(int *)(pcVar25 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar25 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar15 = 0x618;\n  }" { (expression_statement "iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x377c;" (assignment_expression "iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x377c" identifier = (binary_expression "*(int *)(pcVar25 + 0x318b34) + -0x377c" (pointer_expression "*(int *)(pcVar25 + 0x318b34)" * (cast_expression "(int *)(pcVar25 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x318b34)" ( (binary_expression "pcVar25 + 0x318b34" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fcc,uVar15,iVar1);" (call_expression "(**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fcc,uVar15,iVar1)" (parenthesized_expression "(**(code **)(pcVar25 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar25 + 0x318b44)" * (pointer_expression "*(code **)(pcVar25 + 0x318b44)" * (cast_expression "(code **)(pcVar25 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x318b44)" ( (binary_expression "pcVar25 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar25 + 0x318b34) + -0x4fcc,uVar15,iVar1)" ( (binary_expression "*(int *)(pcVar25 + 0x318b34) + -0x4fcc" (pointer_expression "*(int *)(pcVar25 + 0x318b34)" * (cast_expression "(int *)(pcVar25 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x318b34)" ( (binary_expression "pcVar25 + 0x318b34" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);" (call_expression "(**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4)" (parenthesized_expression "(**(code **)(pcVar25 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar25 + 0x318b44)" * (pointer_expression "*(code **)(pcVar25 + 0x318b44)" * (cast_expression "(code **)(pcVar25 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x318b44)" ( (binary_expression "pcVar25 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4)" ( (binary_expression "*(int *)(pcVar25 + 0x318b34) + -0x5bdc" (pointer_expression "*(int *)(pcVar25 + 0x318b34)" * (cast_expression "(int *)(pcVar25 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x318b34)" ( (binary_expression "pcVar25 + 0x318b34" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar1 + -0x36b4" identifier + number_literal) ))) ;) (expression_statement "(**(code **)(pcVar25 + 0x318b44))\n              (*(int *)(pcVar25 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar25 + 0x318b34) + -0x3578);" (call_expression "(**(code **)(pcVar25 + 0x318b44))\n              (*(int *)(pcVar25 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar25 + 0x318b34) + -0x3578)" (parenthesized_expression "(**(code **)(pcVar25 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar25 + 0x318b44)" * (pointer_expression "*(code **)(pcVar25 + 0x318b44)" * (cast_expression "(code **)(pcVar25 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x318b44)" ( (binary_expression "pcVar25 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar25 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar25 + 0x318b34) + -0x3578)" ( (binary_expression "*(int *)(pcVar25 + 0x31898c) + 0x46d4" (pointer_expression "*(int *)(pcVar25 + 0x31898c)" * (cast_expression "(int *)(pcVar25 + 0x31898c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x31898c)" ( (binary_expression "pcVar25 + 0x31898c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar25 + 0x318b34) + -0x3578" (pointer_expression "*(int *)(pcVar25 + 0x318b34)" * (cast_expression "(int *)(pcVar25 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x318b34)" ( (binary_expression "pcVar25 + 0x318b34" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x366c;" (assignment_expression "iVar1 = *(int *)(pcVar25 + 0x318b34) + -0x366c" identifier = (binary_expression "*(int *)(pcVar25 + 0x318b34) + -0x366c" (pointer_expression "*(int *)(pcVar25 + 0x318b34)" * (cast_expression "(int *)(pcVar25 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x318b34)" ( (binary_expression "pcVar25 + 0x318b34" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xaa,iVar1);" (call_expression "(**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xaa,iVar1)" (parenthesized_expression "(**(code **)(pcVar25 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar25 + 0x318b44)" * (pointer_expression "*(code **)(pcVar25 + 0x318b44)" * (cast_expression "(code **)(pcVar25 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x318b44)" ( (binary_expression "pcVar25 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar25 + 0x318b34) + -0x5bdc,0xaa,iVar1)" ( (binary_expression "*(int *)(pcVar25 + 0x318b34) + -0x5bdc" (pointer_expression "*(int *)(pcVar25 + 0x318b34)" * (cast_expression "(int *)(pcVar25 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x318b34)" ( (binary_expression "pcVar25 + 0x318b34" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "iVar1 = iVar1 + -0x35d8;" (assignment_expression "iVar1 = iVar1 + -0x35d8" identifier = (binary_expression "iVar1 + -0x35d8" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fe0,0x1043,iVar1);" (call_expression "(**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x318b34) + -0x4fe0,0x1043,iVar1)" (parenthesized_expression "(**(code **)(pcVar25 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar25 + 0x318b44)" * (pointer_expression "*(code **)(pcVar25 + 0x318b44)" * (cast_expression "(code **)(pcVar25 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x318b44)" ( (binary_expression "pcVar25 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar25 + 0x318b34) + -0x4fe0,0x1043,iVar1)" ( (binary_expression "*(int *)(pcVar25 + 0x318b34) + -0x4fe0" (pointer_expression "*(int *)(pcVar25 + 0x318b34)" * (cast_expression "(int *)(pcVar25 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x318b34)" ( (binary_expression "pcVar25 + 0x318b34" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "(**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);" (call_expression "(**(code **)(pcVar25 + 0x318b44))(*(int *)(pcVar25 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4)" (parenthesized_expression "(**(code **)(pcVar25 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar25 + 0x318b44)" * (pointer_expression "*(code **)(pcVar25 + 0x318b44)" * (cast_expression "(code **)(pcVar25 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x318b44)" ( (binary_expression "pcVar25 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar25 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4)" ( (binary_expression "*(int *)(pcVar25 + 0x31898c) + 0x44a8" (pointer_expression "*(int *)(pcVar25 + 0x31898c)" * (cast_expression "(int *)(pcVar25 + 0x31898c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x31898c)" ( (binary_expression "pcVar25 + 0x31898c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar1 + -0x35b4" identifier + number_literal) ))) ;) (expression_statement "uVar15 = 0x618;" (assignment_expression "uVar15 = 0x618" identifier = number_literal) ;) }) while (parenthesized_expression "( true )" ( true )) ;) (labeled_statement "LAB_00119850:\n  iVar1 = iVar1 + -0x3768;" statement_identifier : (expression_statement "iVar1 = iVar1 + -0x3768;" (assignment_expression "iVar1 = iVar1 + -0x3768" identifier = (binary_expression "iVar1 + -0x3768" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar6 + 0x318ce8))(*(int *)(puVar6 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);" (call_expression "(**(code **)(puVar6 + 0x318ce8))(*(int *)(puVar6 + 0x318cd8) + -0x4fcc,0x5d2,iVar1)" (parenthesized_expression "(**(code **)(puVar6 + 0x318ce8))" ( (pointer_expression "**(code **)(puVar6 + 0x318ce8)" * (pointer_expression "*(code **)(puVar6 + 0x318ce8)" * (cast_expression "(code **)(puVar6 + 0x318ce8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x318ce8)" ( (binary_expression "puVar6 + 0x318ce8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar6 + 0x318cd8) + -0x4fcc,0x5d2,iVar1)" ( (binary_expression "*(int *)(puVar6 + 0x318cd8) + -0x4fcc" (pointer_expression "*(int *)(puVar6 + 0x318cd8)" * (cast_expression "(int *)(puVar6 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x318cd8)" ( (binary_expression "puVar6 + 0x318cd8" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (goto_statement "goto LAB_00119868;" goto statement_identifier ;) (ERROR "}" }))
(translation_unit "undefined4 *\nFUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)\n\n{\n  int iVar1;\n  uint uVar2;\n  undefined *puVar3;\n  uint *puVar4;\n  uint uVar5;\n  uchar *puVar6;\n  ushort uVar7;\n  undefined *puVar8;\n  int iVar9;\n  uint uVar10;\n  uint uVar11;\n  uint *puVar12;\n  uint extraout_v1;\n  undefined *puVar13;\n  int *piVar14;\n  int iVar15;\n  undefined4 uVar16;\n  undefined4 *puVar17;\n  int iVar18;\n  int iVar19;\n  undefined *in_t1;\n  undefined *puVar20;\n  Stringpool_template *pSVar21;\n  int *piVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  uchar *puVar25;\n  undefined4 *puVar26;\n  Output_section_incremental_inputs<64,false> *unaff_s4;\n  int unaff_s6;\n  code *pcVar27;\n  int *piVar28;\n  \n  piVar28 = *(int **)(param_1 + 0x30);\n  pSVar21 = (Stringpool_template *)piVar28[10];\n  if (-1 < *(int *)(param_1 + 0x20) << 2) goto LAB_00119650;\n  if (-1 < *(int *)(param_1 + 0x20) << 1) goto LAB_00119634;\n  iVar1 = *(int *)(param_1 + 0x10);\n  puVar20 = *(undefined **)(param_1 + 0x14);\n  if (-1 < *(int *)(param_1 + 0x18)) {\n    puVar13 = *(undefined **)(param_2 + 8);\n    puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));\n    in_t1 = *(undefined **)(param_2 + 0xc);\n    if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }\nLAB_00119628:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\nLAB_0011962c:\n  while( true ) {\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }\nLAB_001195dc:\n  puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5);\n  return puVar17;\nLAB_001196a4:\n  iVar9 = 0x108;\n  puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);\n  puVar13 = PTR_LAB_0043220c + 0x46d4;\n  (*(code *)PTR_do_gold_unreachable_004323c4)();\n  uVar10 = extraout_v1;\nLAB_001196c0:\n  if (uVar10 != 0) goto code_r0x001196c8;\n  goto LAB_0011940c;\ncode_r0x001196c8:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  goto LAB_0011962c;\n  while( true ) {\n    uVar2 = piVar22[1];\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    puVar17 = puVar24;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);\n    iVar1 = *piVar28;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }\n    iVar15 = piVar22[6];\n    puVar24 = puVar17 + 6;\n    piVar14 = (int *)puVar26[1];\n    piVar28 = piVar28 + 1;\n    *puVar17 = uVar16;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar22[7];\n    *(ushort *)(puVar17 + 5) = uVar7;\n    puVar17[3] = iVar15;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar15 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar14 == piVar28) {\n      return puVar24;\n    }\n    piVar22 = (int *)*piVar28;\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;\n  }\nLAB_00119868:\n  pcVar27 = *(code **)(puVar20 + 0x318ce8);\n  puVar26 = (undefined4 *)(iVar1 + -0x3578);\n  iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4;\n  (*pcVar27)(iVar1,0x108,puVar26);\n  puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30);\n  if (puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]) {\n    return puVar26;\n  }\n  iVar1 = *(int *)(pcVar27 + 0x318b34);\n  piVar28 = (int *)*puVar17;\n  uVar2 = (**(code **)(*piVar28 + 8))(piVar28);\n  if (uVar2 < 6) {\n                    \n                    \n    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return puVar17;\n  }\n  uVar16 = 0x6f2;\n  do {\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar16 = 0x618;\n  } while( true );\nLAB_00119850:\n  iVar1 = iVar1 + -0x3768;\n  (**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);\n  goto LAB_00119868;\n}\n\n" (ERROR "undefined4 *\nFUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" (binary_expression "undefined4 *\nFUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" identifier * (call_expression "FUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" identifier (argument_list "(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" ( (binary_expression "Output_section_incremental_inputs<64" identifier < number_literal) , (binary_expression "false> *param_1" false > (pointer_expression "*param_1" * identifier)) , (ERROR "int" identifier) identifier , identifier (ERROR "param_3" identifier) , identifier (ERROR "param_4" identifier) , identifier (ERROR "param_5" identifier) ))))) (compound_statement "{\n  int iVar1;\n  uint uVar2;\n  undefined *puVar3;\n  uint *puVar4;\n  uint uVar5;\n  uchar *puVar6;\n  ushort uVar7;\n  undefined *puVar8;\n  int iVar9;\n  uint uVar10;\n  uint uVar11;\n  uint *puVar12;\n  uint extraout_v1;\n  undefined *puVar13;\n  int *piVar14;\n  int iVar15;\n  undefined4 uVar16;\n  undefined4 *puVar17;\n  int iVar18;\n  int iVar19;\n  undefined *in_t1;\n  undefined *puVar20;\n  Stringpool_template *pSVar21;\n  int *piVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  uchar *puVar25;\n  undefined4 *puVar26;\n  Output_section_incremental_inputs<64,false> *unaff_s4;\n  int unaff_s6;\n  code *pcVar27;\n  int *piVar28;\n  \n  piVar28 = *(int **)(param_1 + 0x30);\n  pSVar21 = (Stringpool_template *)piVar28[10];\n  if (-1 < *(int *)(param_1 + 0x20) << 2) goto LAB_00119650;\n  if (-1 < *(int *)(param_1 + 0x20) << 1) goto LAB_00119634;\n  iVar1 = *(int *)(param_1 + 0x10);\n  puVar20 = *(undefined **)(param_1 + 0x14);\n  if (-1 < *(int *)(param_1 + 0x18)) {\n    puVar13 = *(undefined **)(param_2 + 8);\n    puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));\n    in_t1 = *(undefined **)(param_2 + 0xc);\n    if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }\nLAB_00119628:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\nLAB_0011962c:\n  while( true ) {\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }\nLAB_001195dc:\n  puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5);\n  return puVar17;\nLAB_001196a4:\n  iVar9 = 0x108;\n  puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);\n  puVar13 = PTR_LAB_0043220c + 0x46d4;\n  (*(code *)PTR_do_gold_unreachable_004323c4)();\n  uVar10 = extraout_v1;\nLAB_001196c0:\n  if (uVar10 != 0) goto code_r0x001196c8;\n  goto LAB_0011940c;\ncode_r0x001196c8:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  goto LAB_0011962c;\n  while( true ) {\n    uVar2 = piVar22[1];\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    puVar17 = puVar24;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);\n    iVar1 = *piVar28;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }\n    iVar15 = piVar22[6];\n    puVar24 = puVar17 + 6;\n    piVar14 = (int *)puVar26[1];\n    piVar28 = piVar28 + 1;\n    *puVar17 = uVar16;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar22[7];\n    *(ushort *)(puVar17 + 5) = uVar7;\n    puVar17[3] = iVar15;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar15 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar14 == piVar28) {\n      return puVar24;\n    }\n    piVar22 = (int *)*piVar28;\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;\n  }\nLAB_00119868:\n  pcVar27 = *(code **)(puVar20 + 0x318ce8);\n  puVar26 = (undefined4 *)(iVar1 + -0x3578);\n  iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4;\n  (*pcVar27)(iVar1,0x108,puVar26);\n  puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30);\n  if (puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]) {\n    return puVar26;\n  }\n  iVar1 = *(int *)(pcVar27 + 0x318b34);\n  piVar28 = (int *)*puVar17;\n  uVar2 = (**(code **)(*piVar28 + 8))(piVar28);\n  if (uVar2 < 6) {\n                    \n                    \n    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return puVar17;\n  }\n  uVar16 = 0x6f2;\n  do {\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar16 = 0x618;\n  } while( true );\nLAB_00119850:\n  iVar1 = iVar1 + -0x3768;\n  (**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);\n  goto LAB_00119868;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "uint *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "uchar *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "ushort uVar7;" type_identifier identifier ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "uint *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "uint extraout_v1;" type_identifier identifier ;) (declaration "undefined *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "undefined4 uVar16;" type_identifier identifier ;) (declaration "undefined4 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "undefined *in_t1;" type_identifier (pointer_declarator "*in_t1" * identifier) ;) (declaration "undefined *puVar20;" type_identifier (pointer_declarator "*puVar20" * identifier) ;) (declaration "Stringpool_template *pSVar21;" type_identifier (pointer_declarator "*pSVar21" * identifier) ;) (declaration "int *piVar22;" primitive_type (pointer_declarator "*piVar22" * identifier) ;) (declaration "int *piVar23;" primitive_type (pointer_declarator "*piVar23" * identifier) ;) (declaration "undefined4 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "uchar *puVar25;" type_identifier (pointer_declarator "*puVar25" * identifier) ;) (declaration "undefined4 *puVar26;" type_identifier (pointer_declarator "*puVar26" * identifier) ;) (expression_statement "Output_section_incremental_inputs<64,false> *unaff_s4;" (comma_expression "Output_section_incremental_inputs<64,false> *unaff_s4" (binary_expression "Output_section_incremental_inputs<64" identifier < number_literal) , (binary_expression "false> *unaff_s4" false > (pointer_expression "*unaff_s4" * identifier))) ;) (declaration "int unaff_s6;" primitive_type identifier ;) (declaration "code *pcVar27;" type_identifier (pointer_declarator "*pcVar27" * identifier) ;) (declaration "int *piVar28;" primitive_type (pointer_declarator "*piVar28" * identifier) ;) (expression_statement "piVar28 = *(int **)(param_1 + 0x30);" (assignment_expression "piVar28 = *(int **)(param_1 + 0x30)" identifier = (pointer_expression "*(int **)(param_1 + 0x30)" * (cast_expression "(int **)(param_1 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "pSVar21 = (Stringpool_template *)piVar28[10];" (assignment_expression "pSVar21 = (Stringpool_template *)piVar28[10]" identifier = (cast_expression "(Stringpool_template *)piVar28[10]" ( (type_descriptor "Stringpool_template *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar28[10]" identifier [ number_literal ]))) ;) (if_statement "if (-1 < *(int *)(param_1 + 0x20) << 2) goto LAB_00119650;" if (parenthesized_expression "(-1 < *(int *)(param_1 + 0x20) << 2)" ( (binary_expression "-1 < *(int *)(param_1 + 0x20) << 2" number_literal < (binary_expression "*(int *)(param_1 + 0x20) << 2" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119650;" goto statement_identifier ;)) (if_statement "if (-1 < *(int *)(param_1 + 0x20) << 1) goto LAB_00119634;" if (parenthesized_expression "(-1 < *(int *)(param_1 + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(param_1 + 0x20) << 1" number_literal < (binary_expression "*(int *)(param_1 + 0x20) << 1" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119634;" goto statement_identifier ;)) (expression_statement "iVar1 = *(int *)(param_1 + 0x10);" (assignment_expression "iVar1 = *(int *)(param_1 + 0x10)" identifier = (pointer_expression "*(int *)(param_1 + 0x10)" * (cast_expression "(int *)(param_1 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar20 = *(undefined **)(param_1 + 0x14);" (assignment_expression "puVar20 = *(undefined **)(param_1 + 0x14)" identifier = (pointer_expression "*(undefined **)(param_1 + 0x14)" * (cast_expression "(undefined **)(param_1 + 0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (-1 < *(int *)(param_1 + 0x18)) {\n    puVar13 = *(undefined **)(param_2 + 8);\n    puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));\n    in_t1 = *(undefined **)(param_2 + 0xc);\n    if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }" if (parenthesized_expression "(-1 < *(int *)(param_1 + 0x18))" ( (binary_expression "-1 < *(int *)(param_1 + 0x18)" number_literal < (pointer_expression "*(int *)(param_1 + 0x18)" * (cast_expression "(int *)(param_1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n    puVar13 = *(undefined **)(param_2 + 8);\n    puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));\n    in_t1 = *(undefined **)(param_2 + 0xc);\n    if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }" { (expression_statement "puVar13 = *(undefined **)(param_2 + 8);" (assignment_expression "puVar13 = *(undefined **)(param_2 + 8)" identifier = (pointer_expression "*(undefined **)(param_2 + 8)" * (cast_expression "(undefined **)(param_2 + 8)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) ))))) ;) (expression_statement "puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));" (assignment_expression "puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18))" identifier = (cast_expression "(undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18))" ( (binary_expression "(uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18)" (call_expression "(uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar20 + *(int *)(param_1 + 0x1c) < puVar20)" ( (binary_expression "puVar20 + *(int *)(param_1 + 0x1c) < puVar20" (binary_expression "puVar20 + *(int *)(param_1 + 0x1c)" identifier + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) < identifier) ))) + (pointer_expression "*(int *)(param_1 + 0x18)" * (cast_expression "(int *)(param_1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) ))))) )))) ;) (expression_statement "in_t1 = *(undefined **)(param_2 + 0xc);" (assignment_expression "in_t1 = *(undefined **)(param_2 + 0xc)" identifier = (pointer_expression "*(undefined **)(param_2 + 0xc)" * (cast_expression "(undefined **)(param_2 + 0xc)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }" if (parenthesized_expression "(((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1))))" ( (binary_expression "((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))" (parenthesized_expression "((int)puVar8 <= (int)puVar13)" ( (binary_expression "(int)puVar8 <= (int)puVar13" (cast_expression "(int)puVar8" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))" ( (parenthesized_expression "(puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1))" ( (binary_expression "puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)" (binary_expression "puVar8 != puVar13" identifier != identifier) || (parenthesized_expression "(puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)" ( (binary_expression "puVar20 + *(int *)(param_1 + 0x1c) <= in_t1" (binary_expression "puVar20 + *(int *)(param_1 + 0x1c)" identifier + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) <= identifier) ))) )) ))) )) (compound_statement "{\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }" { (expression_statement "iVar9 = piVar28[0xe];" (assignment_expression "iVar9 = piVar28[0xe]" identifier = (subscript_expression "piVar28[0xe]" identifier [ number_literal ])) ;) (expression_statement "piVar22 = *(int **)(param_2 + 0x10);" (assignment_expression "piVar22 = *(int **)(param_2 + 0x10)" identifier = (pointer_expression "*(int **)(param_2 + 0x10)" * (cast_expression "(int **)(param_2 + 0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));" (assignment_expression "puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c))" identifier = (cast_expression "(uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c))" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar22 + *(int *)(param_1 + 0x1c))" ( (binary_expression "(int)piVar22 + *(int *)(param_1 + 0x1c)" (cast_expression "(int)piVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) )))) ;) (expression_statement "unaff_s4 = param_1;" (assignment_expression "unaff_s4 = param_1" identifier = identifier) ;) (expression_statement "unaff_s6 = param_2;" (assignment_expression "unaff_s6 = param_2" identifier = identifier) ;) (if_statement "if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;" if (parenthesized_expression "(-1 < *(int *)(iVar9 + 0x20) << 2)" ( (binary_expression "-1 < *(int *)(iVar9 + 0x20) << 2" number_literal < (binary_expression "*(int *)(iVar9 + 0x20) << 2" (pointer_expression "*(int *)(iVar9 + 0x20)" * (cast_expression "(int *)(iVar9 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x20)" ( (binary_expression "iVar9 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119650;" goto statement_identifier ;)) (expression_statement "iVar19 = *(int *)(iVar9 + 0x18);" (assignment_expression "iVar19 = *(int *)(iVar9 + 0x18)" identifier = (pointer_expression "*(int *)(iVar9 + 0x18)" * (cast_expression "(int *)(iVar9 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "puVar17 = *(undefined4 **)(iVar9 + 0x1c);" (assignment_expression "puVar17 = *(undefined4 **)(iVar9 + 0x1c)" identifier = (pointer_expression "*(undefined4 **)(iVar9 + 0x1c)" * (cast_expression "(undefined4 **)(iVar9 + 0x1c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x1c)" ( (binary_expression "iVar9 + 0x1c" identifier + number_literal) ))))) ;) (if_statement "if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;" if (parenthesized_expression "(-1 < *(int *)(iVar9 + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(iVar9 + 0x20) << 1" number_literal < (binary_expression "*(int *)(iVar9 + 0x20) << 1" (pointer_expression "*(int *)(iVar9 + 0x20)" * (cast_expression "(int *)(iVar9 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x20)" ( (binary_expression "iVar9 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119634;" goto statement_identifier ;)) (expression_statement "uVar2 = *(uint *)(iVar9 + 0x10);" (assignment_expression "uVar2 = *(uint *)(iVar9 + 0x10)" identifier = (pointer_expression "*(uint *)(iVar9 + 0x10)" * (cast_expression "(uint *)(iVar9 + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x10)" ( (binary_expression "iVar9 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar8 = *(undefined **)(iVar9 + 0x14);" (assignment_expression "puVar8 = *(undefined **)(iVar9 + 0x14)" identifier = (pointer_expression "*(undefined **)(iVar9 + 0x14)" * (cast_expression "(undefined **)(iVar9 + 0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x14)" ( (binary_expression "iVar9 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }" if (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) (compound_statement "{\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }" { (expression_statement "puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);" (assignment_expression "puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19)" identifier = (cast_expression "(undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19)" ( (binary_expression "(uint)(puVar8 + (int)puVar17 < puVar8) + iVar19" (call_expression "(uint)(puVar8 + (int)puVar17 < puVar8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar8 + (int)puVar17 < puVar8)" ( (binary_expression "puVar8 + (int)puVar17 < puVar8" (binary_expression "puVar8 + (int)puVar17" identifier + (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier)) < identifier) ))) + identifier) )))) ;) (if_statement "if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }" if (parenthesized_expression "((int)puVar3 <= (int)puVar13)" ( (binary_expression "(int)puVar3 <= (int)puVar13" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }" { (expression_statement "uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);" (assignment_expression "uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17)" identifier = (call_expression "(uint)(in_t1 < puVar8 + (int)puVar17)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(in_t1 < puVar8 + (int)puVar17)" ( (binary_expression "in_t1 < puVar8 + (int)puVar17" identifier < (binary_expression "puVar8 + (int)puVar17" identifier + (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier))) )))) ;) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" identifier = number_literal) ;) (if_statement "if (puVar3 == puVar13) goto LAB_001196c0;" if (parenthesized_expression "(puVar3 == puVar13)" ( (binary_expression "puVar3 == puVar13" identifier == identifier) )) (goto_statement "goto LAB_001196c0;" goto statement_identifier ;)) (labeled_statement "LAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);" statement_identifier : (expression_statement "uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);" (assignment_expression "uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10)" identifier = (pointer_expression "*(uint *)(*(int *)(param_1 + 0x34) + 0x10)" * (cast_expression "(uint *)(*(int *)(param_1 + 0x34) + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x34) + 0x10)" ( (binary_expression "*(int *)(param_1 + 0x34) + 0x10" (pointer_expression "*(int *)(param_1 + 0x34)" * (cast_expression "(int *)(param_1 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34)" ( (binary_expression "param_1 + 0x34" identifier + number_literal) )))) + number_literal) ))))) ;)) (expression_statement "piVar22 = (int *)((int)piVar22 + (int)puVar17);" (assignment_expression "piVar22 = (int *)((int)piVar22 + (int)puVar17)" identifier = (cast_expression "(int *)((int)piVar22 + (int)puVar17)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar22 + (int)puVar17)" ( (binary_expression "(int)piVar22 + (int)puVar17" (cast_expression "(int)piVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (if_statement "if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }" if (parenthesized_expression "(uVar10 < 0x20000000)" ( (binary_expression "uVar10 < 0x20000000" identifier < number_literal) )) (compound_statement "{\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }" { (expression_statement "puVar13 = (undefined *)(uVar10 << 2);" (assignment_expression "puVar13 = (undefined *)(uVar10 << 2)" identifier = (cast_expression "(undefined *)(uVar10 << 2)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar10 << 2)" ( (binary_expression "uVar10 << 2" identifier << number_literal) )))) ;) (expression_statement "puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);" (assignment_expression "puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13)" identifier = (cast_expression "(uint *)(*(code *)PTR_operator_new___004322dc)(puVar13)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_operator_new___004322dc)(puVar13)" (parenthesized_expression "(*(code *)PTR_operator_new___004322dc)" ( (pointer_expression "*(code *)PTR_operator_new___004322dc" * (cast_expression "(code *)PTR_operator_new___004322dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar13)" ( identifier ))))) ;) (expression_statement "(*(code *)PTR_memset_00436850)(puVar4,0,puVar13);" (call_expression "(*(code *)PTR_memset_00436850)(puVar4,0,puVar13)" (parenthesized_expression "(*(code *)PTR_memset_00436850)" ( (pointer_expression "*(code *)PTR_memset_00436850" * (cast_expression "(code *)PTR_memset_00436850" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar4,0,puVar13)" ( identifier , number_literal , identifier ))) ;) (expression_statement "uVar5 = piVar28[1] - *piVar28 >> 2;" (assignment_expression "uVar5 = piVar28[1] - *piVar28 >> 2" identifier = (binary_expression "piVar28[1] - *piVar28 >> 2" (binary_expression "piVar28[1] - *piVar28" (subscript_expression "piVar28[1]" identifier [ number_literal ]) - (pointer_expression "*piVar28" * identifier)) >> number_literal)) ;) (if_statement "if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;" if (parenthesized_expression "(*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9])" ( (binary_expression "*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]" (pointer_expression "*(uint *)(pSVar21 + 0x28)" * (cast_expression "(uint *)(pSVar21 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pSVar21 + 0x28)" ( (binary_expression "pSVar21 + 0x28" identifier + number_literal) )))) < (cast_expression "(uint)piVar28[9]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "piVar28[9]" identifier [ number_literal ]))) )) (goto_statement "goto LAB_001196a4;" goto statement_identifier ;)) (expression_statement "uVar11 = piVar28[9] - 1;" (assignment_expression "uVar11 = piVar28[9] - 1" identifier = (binary_expression "piVar28[9] - 1" (subscript_expression "piVar28[9]" identifier [ number_literal ]) - number_literal)) ;) (expression_statement "uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);" (assignment_expression "uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" identifier = (pointer_expression "*(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" * (cast_expression "(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" ( (binary_expression "*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4" (pointer_expression "*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc)" * (cast_expression "(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc)" ( (binary_expression "*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc" (pointer_expression "*(int *)(pSVar21 + 0x1c)" * (cast_expression "(int *)(pSVar21 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pSVar21 + 0x1c)" ( (binary_expression "pSVar21 + 0x1c" identifier + number_literal) )))) + (binary_expression "(uVar11 >> 0xd) * 0xc" (parenthesized_expression "(uVar11 >> 0xd)" ( (binary_expression "uVar11 >> 0xd" identifier >> number_literal) )) * number_literal)) )))) + (binary_expression "(uVar11 & 0x1fff) * 4" (parenthesized_expression "(uVar11 & 0x1fff)" ( (binary_expression "uVar11 & 0x1fff" identifier & number_literal) )) * number_literal)) ))))) ;) (expression_statement "*(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "*(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (pointer_expression "*(uint *)(puVar25 + 4)" * (cast_expression "(uint *)(puVar25 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar25 + 4)" ( (binary_expression "puVar25 + 4" identifier + number_literal) )))) = (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "puVar25[0] = '\x02';" (assignment_expression "puVar25[0] = '\x02'" (subscript_expression "puVar25[0]" identifier [ number_literal ]) = (char_literal "'\x02'" ' escape_sequence ')) ;) (expression_statement "puVar25[1] = '\0';" (assignment_expression "puVar25[1] = '\0'" (subscript_expression "puVar25[1]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[2] = '\0';" (assignment_expression "puVar25[2] = '\0'" (subscript_expression "puVar25[2]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[3] = '\0';" (assignment_expression "puVar25[3] = '\0'" (subscript_expression "puVar25[3]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[0xc] = '\0';" (assignment_expression "puVar25[0xc] = '\0'" (subscript_expression "puVar25[0xc]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[0xd] = '\0';" (assignment_expression "puVar25[0xd] = '\0'" (subscript_expression "puVar25[0xd]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[0xe] = '\0';" (assignment_expression "puVar25[0xe] = '\0'" (subscript_expression "puVar25[0xe]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puVar25[0xf] = '\0';" (assignment_expression "puVar25[0xf] = '\0'" (subscript_expression "puVar25[0xf]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "*(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;" (assignment_expression "*(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000" (pointer_expression "*(uint *)(puVar25 + 8)" * (cast_expression "(uint *)(puVar25 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar25 + 8)" ( (binary_expression "puVar25 + 8" identifier + number_literal) )))) = (binary_expression "(((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10)" ( (binary_expression "(uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10" (binary_expression "(uVar11 >> 0x10) << 0x18" (parenthesized_expression "(uVar11 >> 0x10)" ( (binary_expression "uVar11 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar11 >> 0x18) << 0x10" (parenthesized_expression "(uVar11 >> 0x18)" ( (binary_expression "uVar11 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff)" ( (binary_expression "(uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff" (binary_expression "(uVar11 & 0xff) << 8" (parenthesized_expression "(uVar11 & 0xff)" ( (binary_expression "uVar11 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar11 >> 8 & 0xff" (binary_expression "uVar11 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (ERROR "puVar6 = (uchar *)gold::" (assignment_expression "puVar6 = (uchar *)gold" identifier = (cast_expression "(uchar *)gold" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) : :) (expression_statement "Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);" (comma_expression "Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21)" (binary_expression "Output_section_incremental_inputs<64" identifier < number_literal) , (binary_expression "false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21)" false > (ERROR "::" : :) (call_expression "write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21)" identifier (argument_list "(param_1,puVar25,puVar25 + 0x10,pSVar21)" ( identifier , identifier , (binary_expression "puVar25 + 0x10" identifier + number_literal) , identifier ))))) ;) (ERROR "iVar9 = gold::" (assignment_expression "iVar9 = gold" identifier = identifier) : :) (expression_statement "Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);" (comma_expression "Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" (binary_expression "Output_section_incremental_inputs<64" identifier < number_literal) , (binary_expression "false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" false > (ERROR "::" : :) (call_expression "write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" identifier (argument_list "(param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" ( identifier , identifier , identifier , identifier , identifier , identifier ))))) ;) (if_statement "if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;" if (parenthesized_expression "(iVar9 - (int)puVar25 >> 0x1f != iVar1)" ( (binary_expression "iVar9 - (int)puVar25 >> 0x1f != iVar1" (binary_expression "iVar9 - (int)puVar25 >> 0x1f" (binary_expression "iVar9 - (int)puVar25" identifier - (cast_expression "(int)puVar25" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal) != identifier) )) (goto_statement "goto LAB_0011969c;" goto statement_identifier ;)) (if_statement "if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;" if (parenthesized_expression "((undefined *)(iVar9 - (int)puVar25) != puVar20)" ( (binary_expression "(undefined *)(iVar9 - (int)puVar25) != puVar20" (cast_expression "(undefined *)(iVar9 - (int)puVar25)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 - (int)puVar25)" ( (binary_expression "iVar9 - (int)puVar25" identifier - (cast_expression "(int)puVar25" ( (type_descriptor "int" primitive_type) ) identifier)) ))) != identifier) )) (goto_statement "goto LAB_0011969c;" goto statement_identifier ;)) (expression_statement "uVar16 = 0x59f;" (assignment_expression "uVar16 = 0x59f" identifier = number_literal) ;) (if_statement "if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }" if (parenthesized_expression "((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8))" ( (binary_expression "(uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)" (parenthesized_expression "(uVar10 >> 0x1e != uVar2)" ( (binary_expression "uVar10 >> 0x1e != uVar2" (binary_expression "uVar10 >> 0x1e" identifier >> number_literal) != identifier) )) || (parenthesized_expression "(puVar13 != puVar8)" ( (binary_expression "puVar13 != puVar8" identifier != identifier) ))) )) (compound_statement "{\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }" { (do_statement "do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );" do (compound_statement "{\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              }" { (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fcc" identifier + number_literal) , identifier , (binary_expression "PTR_s_alize_xindex_004323b4 + -0x37c8" identifier + number_literal) ))) ;) (labeled_statement "LAB_0011969c:\n                uVar16 = 0x59c;" statement_identifier : (expression_statement "uVar16 = 0x59c;" (assignment_expression "uVar16 = 0x59c" identifier = number_literal) ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "piVar14 = (int *)((int)piVar22 + (int)puVar8);" (assignment_expression "piVar14 = (int *)((int)piVar22 + (int)puVar8)" identifier = (cast_expression "(int *)((int)piVar22 + (int)puVar8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar22 + (int)puVar8)" ( (binary_expression "(int)piVar22 + (int)puVar8" (cast_expression "(int)piVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "puVar12 = puVar4;" (assignment_expression "puVar12 = puVar4" identifier = identifier) ;) (if_statement "if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }" if (parenthesized_expression "(uVar10 != 0)" ( (binary_expression "uVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }" { (do_statement "do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);" do (compound_statement "{\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              }" { (expression_statement "uVar2 = *puVar12;" (assignment_expression "uVar2 = *puVar12" identifier = (pointer_expression "*puVar12" * identifier)) ;) (expression_statement "piVar23 = piVar22 + 1;" (assignment_expression "piVar23 = piVar22 + 1" identifier = (binary_expression "piVar22 + 1" identifier + number_literal)) ;) (expression_statement "*piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "*piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (pointer_expression "*piVar22" * identifier) = (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" ( (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" ( (binary_expression "uVar2 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" ( (binary_expression "uVar2 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" ( (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" ( (binary_expression "uVar2 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "puVar12 = puVar12 + 1;" (assignment_expression "puVar12 = puVar12 + 1" identifier = (binary_expression "puVar12 + 1" identifier + number_literal)) ;) (expression_statement "piVar22 = piVar23;" (assignment_expression "piVar22 = piVar23" identifier = identifier) ;) }) while (parenthesized_expression "(piVar23 != piVar14)" ( (binary_expression "piVar23 != piVar14" identifier != identifier) )) ;) })) (expression_statement "(*(code *)PTR_operator_delete___004323dc)(puVar4);" (call_expression "(*(code *)PTR_operator_delete___004323dc)(puVar4)" (parenthesized_expression "(*(code *)PTR_operator_delete___004323dc)" ( (pointer_expression "*(code *)PTR_operator_delete___004323dc" * (cast_expression "(code *)PTR_operator_delete___004323dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar4)" ( identifier ))) ;) (expression_statement "iVar1 = piVar28[0x10];" (assignment_expression "iVar1 = piVar28[0x10]" identifier = (subscript_expression "piVar28[0x10]" identifier [ number_literal ])) ;) (if_statement "if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;" if (parenthesized_expression "(-1 < *(int *)(iVar1 + 0x20) << 2)" ( (binary_expression "-1 < *(int *)(iVar1 + 0x20) << 2" number_literal < (binary_expression "*(int *)(iVar1 + 0x20) << 2" (pointer_expression "*(int *)(iVar1 + 0x20)" * (cast_expression "(int *)(iVar1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x20)" ( (binary_expression "iVar1 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119650;" goto statement_identifier ;)) (if_statement "if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;" if (parenthesized_expression "(-1 < *(int *)(iVar1 + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(iVar1 + 0x20) << 1" number_literal < (binary_expression "*(int *)(iVar1 + 0x20) << 1" (pointer_expression "*(int *)(iVar1 + 0x20)" * (cast_expression "(int *)(iVar1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x20)" ( (binary_expression "iVar1 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_00119634;" goto statement_identifier ;)) (if_statement "if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }" if (parenthesized_expression "(-1 < *(int *)(iVar1 + 0x18))" ( (binary_expression "-1 < *(int *)(iVar1 + 0x18)" number_literal < (pointer_expression "*(int *)(iVar1 + 0x18)" * (cast_expression "(int *)(iVar1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x18)" ( (binary_expression "iVar1 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }" { (expression_statement "in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);" (assignment_expression "in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c)" identifier = (binary_expression "*(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c)" (pointer_expression "*(undefined **)(iVar1 + 0x14)" * (cast_expression "(undefined **)(iVar1 + 0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))) + (pointer_expression "*(int *)(iVar1 + 0x1c)" * (cast_expression "(int *)(iVar1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1c)" ( (binary_expression "iVar1 + 0x1c" identifier + number_literal) )))))) ;) (expression_statement "iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);" (assignment_expression "iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18)" identifier = (binary_expression "(uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18)" (call_expression "(uint)(in_t1 < *(undefined **)(iVar1 + 0x14))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(in_t1 < *(undefined **)(iVar1 + 0x14))" ( (binary_expression "in_t1 < *(undefined **)(iVar1 + 0x14)" identifier < (pointer_expression "*(undefined **)(iVar1 + 0x14)" * (cast_expression "(undefined **)(iVar1 + 0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) ))))) ))) + (pointer_expression "*(int *)(iVar1 + 0x18)" * (cast_expression "(int *)(iVar1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x18)" ( (binary_expression "iVar1 + 0x18" identifier + number_literal) )))))) ;) (if_statement "if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }" if (parenthesized_expression "(iVar1 <= *(int *)(param_2 + 8))" ( (binary_expression "iVar1 <= *(int *)(param_2 + 8)" identifier <= (pointer_expression "*(int *)(param_2 + 8)" * (cast_expression "(int *)(param_2 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) ))))) )) (compound_statement "{\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }" { (if_statement "if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;" if (parenthesized_expression "(*(int *)(param_2 + 8) == iVar1)" ( (binary_expression "*(int *)(param_2 + 8) == iVar1" (pointer_expression "*(int *)(param_2 + 8)" * (cast_expression "(int *)(param_2 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) == identifier) )) (goto_statement "goto LAB_0011966c;" goto statement_identifier ;)) (goto_statement "goto LAB_001195dc;" goto statement_identifier ;) })) })) (goto_statement "goto LAB_00119628;" goto statement_identifier ;) })) (expression_statement "puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;" (assignment_expression "puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8" identifier = identifier) ;) (expression_statement "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();" (call_expression "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)()" (parenthesized_expression "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)" ( (pointer_expression "*(code *)PTR___cxa_throw_bad_array_new_length_004322e8" * (cast_expression "(code *)PTR___cxa_throw_bad_array_new_length_004322e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puVar26 = *(undefined4 **)(puVar13 + 0x30);" (assignment_expression "puVar26 = *(undefined4 **)(puVar13 + 0x30)" identifier = (pointer_expression "*(undefined4 **)(puVar13 + 0x30)" * (cast_expression "(undefined4 **)(puVar13 + 0x30)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x30)" ( (binary_expression "puVar13 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "piVar28 = (int *)*puVar26;" (assignment_expression "piVar28 = (int *)*puVar26" identifier = (cast_expression "(int *)*puVar26" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar26" * identifier))) ;) (if_statement "if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }" if (parenthesized_expression "(piVar28 == (int *)puVar26[1])" ( (binary_expression "piVar28 == (int *)puVar26[1]" identifier == (cast_expression "(int *)puVar26[1]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar26[1]" identifier [ number_literal ]))) )) (compound_statement "{\n            return puVar17;\n          }" { (return_statement "return puVar17;" return identifier ;) })) (expression_statement "piVar22 = (int *)*piVar28;" (assignment_expression "piVar22 = (int *)*piVar28" identifier = (cast_expression "(int *)*piVar28" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar28" * identifier))) ;) (if_statement "if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }" if (parenthesized_expression "((int)puVar17 - iVar9 != piVar22[3])" ( (binary_expression "(int)puVar17 - iVar9 != piVar22[3]" (binary_expression "(int)puVar17 - iVar9" (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier) - identifier) != (subscript_expression "piVar22[3]" identifier [ number_literal ])) )) (compound_statement "{\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }" { (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar20 + 0x318cd8)" * (cast_expression "(int *)(puVar20 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318cd8)" ( (binary_expression "puVar20 + 0x318cd8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00119850;" goto statement_identifier ;) })) (expression_statement "uVar2 = piVar22[1];" (assignment_expression "uVar2 = piVar22[1]" identifier = (subscript_expression "piVar22[1]" identifier [ number_literal ])) ;) (if_statement "if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;" if (parenthesized_expression "(uVar2 <= *(uint *)(iVar19 + 0x28))" ( (binary_expression "uVar2 <= *(uint *)(iVar19 + 0x28)" identifier <= (pointer_expression "*(uint *)(iVar19 + 0x28)" * (cast_expression "(uint *)(iVar19 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x28)" ( (binary_expression "iVar19 + 0x28" identifier + number_literal) ))))) )) (goto_statement "goto LAB_0011977c;" goto statement_identifier ;)) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar20 + 0x318cd8)" * (cast_expression "(int *)(puVar20 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318cd8)" ( (binary_expression "puVar20 + 0x318cd8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00119868;" goto statement_identifier ;) })) })) })) })) (labeled_statement "LAB_00119628:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" statement_identifier : (expression_statement "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54)" identifier = (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" ( (binary_expression "PTR_LAB_00434040 + 0x2f54" identifier + number_literal) )))) ;)) (labeled_statement "LAB_0011962c:\n  while( true ) {\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" statement_identifier : (while_statement "while( true ) {\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" { (expression_statement "(*pcVar27)();" (call_expression "(*pcVar27)()" (parenthesized_expression "(*pcVar27)" ( (pointer_expression "*pcVar27" * identifier) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);" statement_identifier : (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + -0x36c8" identifier + number_literal) ))) ;)) (expression_statement "unaff_s4 = param_1;" (assignment_expression "unaff_s4 = param_1" identifier = identifier) ;) (expression_statement "unaff_s6 = param_2;" (assignment_expression "unaff_s6 = param_2" identifier = identifier) ;) (labeled_statement "LAB_00119650:\n    param_2 = unaff_s6;" statement_identifier : (expression_statement "param_2 = unaff_s6;" (assignment_expression "param_2 = unaff_s6" identifier = identifier) ;)) (expression_statement "param_1 = unaff_s4;" (assignment_expression "param_1 = unaff_s4" identifier = identifier) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + -0x36bc" identifier + number_literal) ))) ;) (labeled_statement "LAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);" statement_identifier : (expression_statement "in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);" (assignment_expression "in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1)" identifier = (cast_expression "(undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(uint)(*(undefined **)(param_2 + 0xc) < in_t1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(undefined **)(param_2 + 0xc) < in_t1)" ( (binary_expression "*(undefined **)(param_2 + 0xc) < in_t1" (pointer_expression "*(undefined **)(param_2 + 0xc)" * (cast_expression "(undefined **)(param_2 + 0xc)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) < identifier) ))))) ;)) (if_statement "if (in_t1 == (undefined *)0x0) break;" if (parenthesized_expression "(in_t1 == (undefined *)0x0)" ( (binary_expression "in_t1 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54)" identifier = (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" ( (binary_expression "PTR_LAB_00434040 + 0x2f54" identifier + number_literal) )))) ;) }))) (labeled_statement "LAB_001195dc:\n  puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5);" statement_identifier : (expression_statement "puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5);" (comma_expression "puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5)" (binary_expression "puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64" (assignment_expression "puVar17 = (undefined4 *)\n            gold" identifier = (cast_expression "(undefined4 *)\n            gold" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) (ERROR "::Output_section_incremental_inputs" : : identifier) < number_literal) , (binary_expression "false>::write_got_plt\n                      ((uchar *)param_1,param_5)" false > (ERROR "::" : :) (call_expression "write_got_plt\n                      ((uchar *)param_1,param_5)" identifier (argument_list "((uchar *)param_1,param_5)" ( (cast_expression "(uchar *)param_1" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))))) ;)) (return_statement "return puVar17;" return identifier ;) (labeled_statement "LAB_001196a4:\n  iVar9 = 0x108;" statement_identifier : (expression_statement "iVar9 = 0x108;" (assignment_expression "iVar9 = 0x108" identifier = number_literal) ;)) (expression_statement "puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);" (assignment_expression "puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578)" identifier = (cast_expression "(undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_alize_xindex_004323b4 + -0x3578)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x3578" identifier + number_literal) )))) ;) (expression_statement "puVar13 = PTR_LAB_0043220c + 0x46d4;" (assignment_expression "puVar13 = PTR_LAB_0043220c + 0x46d4" identifier = (binary_expression "PTR_LAB_0043220c + 0x46d4" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)();" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)()" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" * (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "uVar10 = extraout_v1;" (assignment_expression "uVar10 = extraout_v1" identifier = identifier) ;) (labeled_statement "LAB_001196c0:\n  if (uVar10 != 0) goto code_r0x001196c8;" statement_identifier : (if_statement "if (uVar10 != 0) goto code_r0x001196c8;" if (parenthesized_expression "(uVar10 != 0)" ( (binary_expression "uVar10 != 0" identifier != number_literal) )) (goto_statement "goto code_r0x001196c8;" goto statement_identifier ;))) (goto_statement "goto LAB_0011940c;" goto statement_identifier ;) (labeled_statement "code_r0x001196c8:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" statement_identifier : (expression_statement "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54)" identifier = (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" ( (binary_expression "PTR_LAB_00434040 + 0x2f54" identifier + number_literal) )))) ;)) (goto_statement "goto LAB_0011962c;" goto statement_identifier ;) (while_statement "while( true ) {\n    uVar2 = piVar22[1];\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    puVar17 = puVar24;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);\n    iVar1 = *piVar28;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }\n    iVar15 = piVar22[6];\n    puVar24 = puVar17 + 6;\n    piVar14 = (int *)puVar26[1];\n    piVar28 = piVar28 + 1;\n    *puVar17 = uVar16;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar22[7];\n    *(ushort *)(puVar17 + 5) = uVar7;\n    puVar17[3] = iVar15;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar15 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar14 == piVar28) {\n      return puVar24;\n    }\n    piVar22 = (int *)*piVar28;\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    uVar2 = piVar22[1];\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    puVar17 = puVar24;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);\n    iVar1 = *piVar28;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }\n    iVar15 = piVar22[6];\n    puVar24 = puVar17 + 6;\n    piVar14 = (int *)puVar26[1];\n    piVar28 = piVar28 + 1;\n    *puVar17 = uVar16;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar22[7];\n    *(ushort *)(puVar17 + 5) = uVar7;\n    puVar17[3] = iVar15;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar15 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar14 == piVar28) {\n      return puVar24;\n    }\n    piVar22 = (int *)*piVar28;\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;\n  }" { (expression_statement "uVar2 = piVar22[1];" (assignment_expression "uVar2 = piVar22[1]" identifier = (subscript_expression "piVar22[1]" identifier [ number_literal ])) ;) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar20 + 0x318cd8)" * (cast_expression "(int *)(puVar20 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318cd8)" ( (binary_expression "puVar20 + 0x318cd8" identifier + number_literal) ))))) ;) (expression_statement "puVar17 = puVar24;" (assignment_expression "puVar17 = puVar24" identifier = identifier) ;) (if_statement "if (*(uint *)(iVar19 + 0x28) < uVar2) break;" if (parenthesized_expression "(*(uint *)(iVar19 + 0x28) < uVar2)" ( (binary_expression "*(uint *)(iVar19 + 0x28) < uVar2" (pointer_expression "*(uint *)(iVar19 + 0x28)" * (cast_expression "(uint *)(iVar19 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x28)" ( (binary_expression "iVar19 + 0x28" identifier + number_literal) )))) < identifier) )) (break_statement "break;" break ;)) (labeled_statement "LAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);" statement_identifier : (expression_statement "uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);" (assignment_expression "uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" identifier = (pointer_expression "*(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" * (cast_expression "(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" ( (binary_expression "*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4" (pointer_expression "*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" * (cast_expression "(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" ( (binary_expression "*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc" (pointer_expression "*(int *)(iVar19 + 0x1c)" * (cast_expression "(int *)(iVar19 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x1c)" ( (binary_expression "iVar19 + 0x1c" identifier + number_literal) )))) + (binary_expression "(uVar2 - 1 >> 0xd) * 0xc" (parenthesized_expression "(uVar2 - 1 >> 0xd)" ( (binary_expression "uVar2 - 1 >> 0xd" (binary_expression "uVar2 - 1" identifier - number_literal) >> number_literal) )) * number_literal)) )))) + (binary_expression "(uVar2 - 1 & 0x1fff) * 4" (parenthesized_expression "(uVar2 - 1 & 0x1fff)" ( (binary_expression "uVar2 - 1 & 0x1fff" (binary_expression "uVar2 - 1" identifier - number_literal) & number_literal) )) * number_literal)) ))))) ;)) (expression_statement "uVar7 = (**(code **)(*piVar22 + 8))(piVar22);" (assignment_expression "uVar7 = (**(code **)(*piVar22 + 8))(piVar22)" identifier = (call_expression "(**(code **)(*piVar22 + 8))(piVar22)" (parenthesized_expression "(**(code **)(*piVar22 + 8))" ( (pointer_expression "**(code **)(*piVar22 + 8)" * (pointer_expression "*(code **)(*piVar22 + 8)" * (cast_expression "(code **)(*piVar22 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar22 + 8)" ( (binary_expression "*piVar22 + 8" (pointer_expression "*piVar22" * identifier) + number_literal) ))))) )) (argument_list "(piVar22)" ( identifier )))) ;) (expression_statement "iVar1 = *piVar28;" (assignment_expression "iVar1 = *piVar28" identifier = (pointer_expression "*piVar28" * identifier)) ;) (if_statement "if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }" if (parenthesized_expression "(*(char *)(iVar1 + 0x20) != '\0')" ( (binary_expression "*(char *)(iVar1 + 0x20) != '\0'" (pointer_expression "*(char *)(iVar1 + 0x20)" * (cast_expression "(char *)(iVar1 + 0x20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x20)" ( (binary_expression "iVar1 + 0x20" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      uVar7 = uVar7 | 0x8000;\n    }" { (expression_statement "uVar7 = uVar7 | 0x8000;" (assignment_expression "uVar7 = uVar7 | 0x8000" identifier = (binary_expression "uVar7 | 0x8000" identifier | number_literal)) ;) })) (if_statement "if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }" if (parenthesized_expression "(*(char *)(iVar1 + 0x21) != '\0')" ( (binary_expression "*(char *)(iVar1 + 0x21) != '\0'" (pointer_expression "*(char *)(iVar1 + 0x21)" * (cast_expression "(char *)(iVar1 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x21)" ( (binary_expression "iVar1 + 0x21" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      uVar7 = uVar7 | 0x4000;\n    }" { (expression_statement "uVar7 = uVar7 | 0x4000;" (assignment_expression "uVar7 = uVar7 | 0x4000" identifier = (binary_expression "uVar7 | 0x4000" identifier | number_literal)) ;) })) (expression_statement "iVar15 = piVar22[6];" (assignment_expression "iVar15 = piVar22[6]" identifier = (subscript_expression "piVar22[6]" identifier [ number_literal ])) ;) (expression_statement "puVar24 = puVar17 + 6;" (assignment_expression "puVar24 = puVar17 + 6" identifier = (binary_expression "puVar17 + 6" identifier + number_literal)) ;) (expression_statement "piVar14 = (int *)puVar26[1];" (assignment_expression "piVar14 = (int *)puVar26[1]" identifier = (cast_expression "(int *)puVar26[1]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar26[1]" identifier [ number_literal ]))) ;) (expression_statement "piVar28 = piVar28 + 1;" (assignment_expression "piVar28 = piVar28 + 1" identifier = (binary_expression "piVar28 + 1" identifier + number_literal)) ;) (expression_statement "*puVar17 = uVar16;" (assignment_expression "*puVar17 = uVar16" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "puVar17[1] = *(undefined4 *)(iVar1 + 0x10);" (assignment_expression "puVar17[1] = *(undefined4 *)(iVar1 + 0x10)" (subscript_expression "puVar17[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined4 *)(iVar1 + 0x10)" * (cast_expression "(undefined4 *)(iVar1 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x10)" ( (binary_expression "iVar1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "iVar18 = piVar22[7];" (assignment_expression "iVar18 = piVar22[7]" identifier = (subscript_expression "piVar22[7]" identifier [ number_literal ])) ;) (expression_statement "*(ushort *)(puVar17 + 5) = uVar7;" (assignment_expression "*(ushort *)(puVar17 + 5) = uVar7" (pointer_expression "*(ushort *)(puVar17 + 5)" * (cast_expression "(ushort *)(puVar17 + 5)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 5)" ( (binary_expression "puVar17 + 5" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar17[3] = iVar15;" (assignment_expression "puVar17[3] = iVar15" (subscript_expression "puVar17[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar17[4] = iVar18;" (assignment_expression "puVar17[4] = iVar18" (subscript_expression "puVar17[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar17[2] = iVar15 >> 0x1f;" (assignment_expression "puVar17[2] = iVar15 >> 0x1f" (subscript_expression "puVar17[2]" identifier [ number_literal ]) = (binary_expression "iVar15 >> 0x1f" identifier >> number_literal)) ;) (expression_statement "*(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);" (assignment_expression "*(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14)" (pointer_expression "*(short *)((int)puVar17 + 0x16)" * (cast_expression "(short *)((int)puVar17 + 0x16)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar17 + 0x16)" ( (binary_expression "(int)puVar17 + 0x16" (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (cast_expression "(short)*(undefined4 *)(iVar1 + 0x14)" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) (pointer_expression "*(undefined4 *)(iVar1 + 0x14)" * (cast_expression "(undefined4 *)(iVar1 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))))) ;) (if_statement "if (piVar14 == piVar28) {\n      return puVar24;\n    }" if (parenthesized_expression "(piVar14 == piVar28)" ( (binary_expression "piVar14 == piVar28" identifier == identifier) )) (compound_statement "{\n      return puVar24;\n    }" { (return_statement "return puVar24;" return identifier ;) })) (expression_statement "piVar22 = (int *)*piVar28;" (assignment_expression "piVar22 = (int *)*piVar28" identifier = (cast_expression "(int *)*piVar28" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar28" * identifier))) ;) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" identifier = (pointer_expression "*(int *)(puVar20 + 0x318cd8)" * (cast_expression "(int *)(puVar20 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318cd8)" ( (binary_expression "puVar20 + 0x318cd8" identifier + number_literal) ))))) ;) (if_statement "if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;" if (parenthesized_expression "((int)puVar24 - iVar9 != piVar22[3])" ( (binary_expression "(int)puVar24 - iVar9 != piVar22[3]" (binary_expression "(int)puVar24 - iVar9" (cast_expression "(int)puVar24" ( (type_descriptor "int" primitive_type) ) identifier) - identifier) != (subscript_expression "piVar22[3]" identifier [ number_literal ])) )) (goto_statement "goto LAB_00119850;" goto statement_identifier ;)) })) (labeled_statement "LAB_00119868:\n  pcVar27 = *(code **)(puVar20 + 0x318ce8);" statement_identifier : (expression_statement "pcVar27 = *(code **)(puVar20 + 0x318ce8);" (assignment_expression "pcVar27 = *(code **)(puVar20 + 0x318ce8)" identifier = (pointer_expression "*(code **)(puVar20 + 0x318ce8)" * (cast_expression "(code **)(puVar20 + 0x318ce8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + 0x318ce8)" ( (binary_expression "puVar20 + 0x318ce8" identifier + number_literal) ))))) ;)) (expression_statement "puVar26 = (undefined4 *)(iVar1 + -0x3578);" (assignment_expression "puVar26 = (undefined4 *)(iVar1 + -0x3578)" identifier = (cast_expression "(undefined4 *)(iVar1 + -0x3578)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + -0x3578)" ( (binary_expression "iVar1 + -0x3578" identifier + number_literal) )))) ;) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4;" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4" identifier = (binary_expression "*(int *)(puVar20 + 0x318b30) + 0x46d4" (pointer_expression "*(int *)(puVar20 + 0x318b30)" * (cast_expression "(int *)(puVar20 + 0x318b30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318b30)" ( (binary_expression "puVar20 + 0x318b30" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar27)(iVar1,0x108,puVar26);" (call_expression "(*pcVar27)(iVar1,0x108,puVar26)" (parenthesized_expression "(*pcVar27)" ( (pointer_expression "*pcVar27" * identifier) )) (argument_list "(iVar1,0x108,puVar26)" ( identifier , number_literal , identifier ))) ;) (expression_statement "puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30);" (assignment_expression "puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30)" identifier = (cast_expression "(undefined4 *)**(int **)(iVar1 + 0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(int **)(iVar1 + 0x30)" * (pointer_expression "*(int **)(iVar1 + 0x30)" * (cast_expression "(int **)(iVar1 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x30)" ( (binary_expression "iVar1 + 0x30" identifier + number_literal) ))))))) ;) (if_statement "if (puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]) {\n    return puVar26;\n  }" if (parenthesized_expression "(puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1])" ( (binary_expression "puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]" identifier == (cast_expression "(undefined4 *)(*(int **)(iVar1 + 0x30))[1]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(*(int **)(iVar1 + 0x30))[1]" (parenthesized_expression "(*(int **)(iVar1 + 0x30))" ( (pointer_expression "*(int **)(iVar1 + 0x30)" * (cast_expression "(int **)(iVar1 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x30)" ( (binary_expression "iVar1 + 0x30" identifier + number_literal) )))) )) [ number_literal ]))) )) (compound_statement "{\n    return puVar26;\n  }" { (return_statement "return puVar26;" return identifier ;) })) (expression_statement "iVar1 = *(int *)(pcVar27 + 0x318b34);" (assignment_expression "iVar1 = *(int *)(pcVar27 + 0x318b34)" identifier = (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) ))))) ;) (expression_statement "piVar28 = (int *)*puVar17;" (assignment_expression "piVar28 = (int *)*puVar17" identifier = (cast_expression "(int *)*puVar17" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar17" * identifier))) ;) (expression_statement "uVar2 = (**(code **)(*piVar28 + 8))(piVar28);" (assignment_expression "uVar2 = (**(code **)(*piVar28 + 8))(piVar28)" identifier = (call_expression "(**(code **)(*piVar28 + 8))(piVar28)" (parenthesized_expression "(**(code **)(*piVar28 + 8))" ( (pointer_expression "**(code **)(*piVar28 + 8)" * (pointer_expression "*(code **)(*piVar28 + 8)" * (cast_expression "(code **)(*piVar28 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar28 + 8)" ( (binary_expression "*piVar28 + 8" (pointer_expression "*piVar28" * identifier) + number_literal) ))))) )) (argument_list "(piVar28)" ( identifier )))) ;) (if_statement "if (uVar2 < 6) {\n                    \n                    \n    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return puVar17;\n  }" if (parenthesized_expression "(uVar2 < 6)" ( (binary_expression "uVar2 < 6" identifier < number_literal) )) (compound_statement "{\n                    \n                    \n    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return puVar17;\n  }" { (expression_statement "puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();" (assignment_expression "puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))()" identifier = (cast_expression "(undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))()" (parenthesized_expression "(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))" ( (pointer_expression "*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950)" * (parenthesized_expression "(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950)" ( (binary_expression "pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950" (binary_expression "pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4)" identifier + (pointer_expression "*(int *)(iVar1 + -0x49fc + uVar2 * 4)" * (cast_expression "(int *)(iVar1 + -0x49fc + uVar2 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + -0x49fc + uVar2 * 4)" ( (binary_expression "iVar1 + -0x49fc + uVar2 * 4" (binary_expression "iVar1 + -0x49fc" identifier + number_literal) + (binary_expression "uVar2 * 4" identifier * number_literal)) ))))) + number_literal) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return puVar17;" return identifier ;) })) (expression_statement "uVar16 = 0x6f2;" (assignment_expression "uVar16 = 0x6f2" identifier = number_literal) ;) (do_statement "do {\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar16 = 0x618;\n  } while( true );" do (compound_statement "{\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar16 = 0x618;\n  }" { (expression_statement "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;" (assignment_expression "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c" identifier = (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x377c" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1)" ( (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x4fcc" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4)" ( (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x5bdc" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar1 + -0x36b4" identifier + number_literal) ))) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);" (call_expression "(**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578)" ( (binary_expression "*(int *)(pcVar27 + 0x31898c) + 0x46d4" (pointer_expression "*(int *)(pcVar27 + 0x31898c)" * (cast_expression "(int *)(pcVar27 + 0x31898c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x31898c)" ( (binary_expression "pcVar27 + 0x31898c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x3578" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;" (assignment_expression "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c" identifier = (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x366c" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1)" ( (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x5bdc" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "iVar1 = iVar1 + -0x35d8;" (assignment_expression "iVar1 = iVar1 + -0x35d8" identifier = (binary_expression "iVar1 + -0x35d8" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1)" ( (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x4fe0" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" * (cast_expression "(int *)(pcVar27 + 0x318b34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x318b34)" ( (binary_expression "pcVar27 + 0x318b34" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" ( (pointer_expression "**(code **)(pcVar27 + 0x318b44)" * (pointer_expression "*(code **)(pcVar27 + 0x318b44)" * (cast_expression "(code **)(pcVar27 + 0x318b44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar27 + 0x318b44)" ( (binary_expression "pcVar27 + 0x318b44" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4)" ( (binary_expression "*(int *)(pcVar27 + 0x31898c) + 0x44a8" (pointer_expression "*(int *)(pcVar27 + 0x31898c)" * (cast_expression "(int *)(pcVar27 + 0x31898c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar27 + 0x31898c)" ( (binary_expression "pcVar27 + 0x31898c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar1 + -0x35b4" identifier + number_literal) ))) ;) (expression_statement "uVar16 = 0x618;" (assignment_expression "uVar16 = 0x618" identifier = number_literal) ;) }) while (parenthesized_expression "( true )" ( true )) ;) (labeled_statement "LAB_00119850:\n  iVar1 = iVar1 + -0x3768;" statement_identifier : (expression_statement "iVar1 = iVar1 + -0x3768;" (assignment_expression "iVar1 = iVar1 + -0x3768" identifier = (binary_expression "iVar1 + -0x3768" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);" (call_expression "(**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1)" (parenthesized_expression "(**(code **)(puVar20 + 0x318ce8))" ( (pointer_expression "**(code **)(puVar20 + 0x318ce8)" * (pointer_expression "*(code **)(puVar20 + 0x318ce8)" * (cast_expression "(code **)(puVar20 + 0x318ce8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + 0x318ce8)" ( (binary_expression "puVar20 + 0x318ce8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1)" ( (binary_expression "*(int *)(puVar20 + 0x318cd8) + -0x4fcc" (pointer_expression "*(int *)(puVar20 + 0x318cd8)" * (cast_expression "(int *)(puVar20 + 0x318cd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x318cd8)" ( (binary_expression "puVar20 + 0x318cd8" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (goto_statement "goto LAB_00119868;" goto statement_identifier ;) }))
(translation_unit (ERROR (binary_expression IDENT * (call_expression IDENT (argument_list ( (binary_expression IDENT < LIT) , (binary_expression BOOL > (pointer_expression * IDENT)) , (ERROR IDENT) IDENT , IDENT (ERROR IDENT) , IDENT (ERROR IDENT) , IDENT (ERROR IDENT) ))))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * 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 IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE 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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (comma_expression (binary_expression IDENT < LIT) , (binary_expression BOOL > (pointer_expression * IDENT))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) < IDENT) ))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) <= (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT != IDENT) || (parenthesized_expression ( (binary_expression (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) <= IDENT) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) < IDENT) ))) + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) <= (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (pointer_expression * IDENT)) >> LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (subscript_expression IDENT [ LIT ]) - LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) * LIT)) )))) + (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) * LIT)) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (ERROR (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) : :) (expression_statement (comma_expression (binary_expression IDENT < LIT) , (binary_expression BOOL > (ERROR : :) (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) , IDENT ))))) ;) (ERROR (assignment_expression IDENT = IDENT) : :) (expression_statement (comma_expression (binary_expression IDENT < LIT) , (binary_expression BOOL > (ERROR : :) (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) IDENT)) >> LIT) != IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) != IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) != IDENT) )) || (parenthesized_expression ( (binary_expression IDENT != IDENT) ))) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , IDENT , (binary_expression IDENT + LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }) while (parenthesized_expression ( BOOL )) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (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 (pointer_expression * IDENT) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) )) (compound_statement { (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - IDENT) != (subscript_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) ))))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) })) })) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;)) (labeled_statement statement_identifier : (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) }))) (labeled_statement statement_identifier : (expression_statement (comma_expression (binary_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) (ERROR : : IDENT) < LIT) , (binary_expression BOOL > (ERROR : :) (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , IDENT ))))) ;)) (return_statement return IDENT ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (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)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;)) (goto_statement goto statement_identifier ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) )) (break_statement break ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) >> LIT) )) * LIT)) )))) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) & LIT) )) * LIT)) ))))) ;)) (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) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * 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 = (binary_expression IDENT | LIT)) ;) })) (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 = (binary_expression IDENT | LIT)) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT >> LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier short) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = (cast_expression ( (type_descriptor (sized_type_specifier short)) ) (pointer_expression * (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 { (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) - IDENT) != (subscript_expression IDENT [ 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 * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * (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 == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) [ LIT ]))) )) (compound_statement { (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (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) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (parenthesized_expression ( (binary_expression (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + (binary_expression IDENT * LIT)) ))))) + LIT) ))) )) (argument_list ( ))))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) while (parenthesized_expression ( BOOL )) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (goto_statement goto statement_identifier ;) }))
(ERROR "undefined4 *\nFUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" (binary_expression "undefined4 *\nFUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" (identifier "undefined4") (* "*") (call_expression "FUN_00119318(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" (identifier "FUN_00119318") (argument_list "(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,\n            undefined4 param_4,longlong param_5)" (( "(") (binary_expression "Output_section_incremental_inputs<64" (identifier "Output_section_incremental_inputs") (< "<") (number_literal "64")) (, ",") (binary_expression "false> *param_1" (false "false") (> ">") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (, ",") (ERROR "int" (identifier "int")) (identifier "param_2") (, ",") (identifier "undefined4") (ERROR "param_3" (identifier "param_3")) (, ",") (identifier "undefined4") (ERROR "param_4" (identifier "param_4")) (, ",") (identifier "longlong") (ERROR "param_5" (identifier "param_5")) () ")"))))) (compound_statement "{\n  int iVar1;\n  uint uVar2;\n  undefined *puVar3;\n  uint *puVar4;\n  uint uVar5;\n  uchar *puVar6;\n  ushort uVar7;\n  undefined *puVar8;\n  int iVar9;\n  uint uVar10;\n  uint uVar11;\n  uint *puVar12;\n  uint extraout_v1;\n  undefined *puVar13;\n  int *piVar14;\n  int iVar15;\n  undefined4 uVar16;\n  undefined4 *puVar17;\n  int iVar18;\n  int iVar19;\n  undefined *in_t1;\n  undefined *puVar20;\n  Stringpool_template *pSVar21;\n  int *piVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  uchar *puVar25;\n  undefined4 *puVar26;\n  Output_section_incremental_inputs<64,false> *unaff_s4;\n  int unaff_s6;\n  code *pcVar27;\n  int *piVar28;\n  \n  piVar28 = *(int **)(param_1 + 0x30);\n  pSVar21 = (Stringpool_template *)piVar28[10];\n  if (-1 < *(int *)(param_1 + 0x20) << 2) goto LAB_00119650;\n  if (-1 < *(int *)(param_1 + 0x20) << 1) goto LAB_00119634;\n  iVar1 = *(int *)(param_1 + 0x10);\n  puVar20 = *(undefined **)(param_1 + 0x14);\n  if (-1 < *(int *)(param_1 + 0x18)) {\n    puVar13 = *(undefined **)(param_2 + 8);\n    puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));\n    in_t1 = *(undefined **)(param_2 + 0xc);\n    if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }\nLAB_00119628:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\nLAB_0011962c:\n  while( true ) {\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }\nLAB_001195dc:\n  puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5);\n  return puVar17;\nLAB_001196a4:\n  iVar9 = 0x108;\n  puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);\n  puVar13 = PTR_LAB_0043220c + 0x46d4;\n  (*(code *)PTR_do_gold_unreachable_004323c4)();\n  uVar10 = extraout_v1;\nLAB_001196c0:\n  if (uVar10 != 0) goto code_r0x001196c8;\n  goto LAB_0011940c;\ncode_r0x001196c8:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  goto LAB_0011962c;\n  while( true ) {\n    uVar2 = piVar22[1];\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    puVar17 = puVar24;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);\n    iVar1 = *piVar28;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }\n    iVar15 = piVar22[6];\n    puVar24 = puVar17 + 6;\n    piVar14 = (int *)puVar26[1];\n    piVar28 = piVar28 + 1;\n    *puVar17 = uVar16;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar22[7];\n    *(ushort *)(puVar17 + 5) = uVar7;\n    puVar17[3] = iVar15;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar15 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar14 == piVar28) {\n      return puVar24;\n    }\n    piVar22 = (int *)*piVar28;\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;\n  }\nLAB_00119868:\n  pcVar27 = *(code **)(puVar20 + 0x318ce8);\n  puVar26 = (undefined4 *)(iVar1 + -0x3578);\n  iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4;\n  (*pcVar27)(iVar1,0x108,puVar26);\n  puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30);\n  if (puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]) {\n    return puVar26;\n  }\n  iVar1 = *(int *)(pcVar27 + 0x318b34);\n  piVar28 = (int *)*puVar17;\n  uVar2 = (**(code **)(*piVar28 + 8))(piVar28);\n  if (uVar2 < 6) {\n                    \n                    \n    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return puVar17;\n  }\n  uVar16 = 0x6f2;\n  do {\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar16 = 0x618;\n  } while( true );\nLAB_00119850:\n  iVar1 = iVar1 + -0x3768;\n  (**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);\n  goto LAB_00119868;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "uint uVar2;" (type_identifier "uint") (identifier "uVar2") (; ";")) (declaration "undefined *puVar3;" (type_identifier "undefined") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "uint *puVar4;" (type_identifier "uint") (pointer_declarator "*puVar4" (* "*") (identifier "puVar4")) (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "uchar *puVar6;" (type_identifier "uchar") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "ushort uVar7;" (type_identifier "ushort") (identifier "uVar7") (; ";")) (declaration "undefined *puVar8;" (type_identifier "undefined") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "int iVar9;" (primitive_type "int") (identifier "iVar9") (; ";")) (declaration "uint uVar10;" (type_identifier "uint") (identifier "uVar10") (; ";")) (declaration "uint uVar11;" (type_identifier "uint") (identifier "uVar11") (; ";")) (declaration "uint *puVar12;" (type_identifier "uint") (pointer_declarator "*puVar12" (* "*") (identifier "puVar12")) (; ";")) (declaration "uint extraout_v1;" (type_identifier "uint") (identifier "extraout_v1") (; ";")) (declaration "undefined *puVar13;" (type_identifier "undefined") (pointer_declarator "*puVar13" (* "*") (identifier "puVar13")) (; ";")) (declaration "int *piVar14;" (primitive_type "int") (pointer_declarator "*piVar14" (* "*") (identifier "piVar14")) (; ";")) (declaration "int iVar15;" (primitive_type "int") (identifier "iVar15") (; ";")) (declaration "undefined4 uVar16;" (type_identifier "undefined4") (identifier "uVar16") (; ";")) (declaration "undefined4 *puVar17;" (type_identifier "undefined4") (pointer_declarator "*puVar17" (* "*") (identifier "puVar17")) (; ";")) (declaration "int iVar18;" (primitive_type "int") (identifier "iVar18") (; ";")) (declaration "int iVar19;" (primitive_type "int") (identifier "iVar19") (; ";")) (declaration "undefined *in_t1;" (type_identifier "undefined") (pointer_declarator "*in_t1" (* "*") (identifier "in_t1")) (; ";")) (declaration "undefined *puVar20;" (type_identifier "undefined") (pointer_declarator "*puVar20" (* "*") (identifier "puVar20")) (; ";")) (declaration "Stringpool_template *pSVar21;" (type_identifier "Stringpool_template") (pointer_declarator "*pSVar21" (* "*") (identifier "pSVar21")) (; ";")) (declaration "int *piVar22;" (primitive_type "int") (pointer_declarator "*piVar22" (* "*") (identifier "piVar22")) (; ";")) (declaration "int *piVar23;" (primitive_type "int") (pointer_declarator "*piVar23" (* "*") (identifier "piVar23")) (; ";")) (declaration "undefined4 *puVar24;" (type_identifier "undefined4") (pointer_declarator "*puVar24" (* "*") (identifier "puVar24")) (; ";")) (declaration "uchar *puVar25;" (type_identifier "uchar") (pointer_declarator "*puVar25" (* "*") (identifier "puVar25")) (; ";")) (declaration "undefined4 *puVar26;" (type_identifier "undefined4") (pointer_declarator "*puVar26" (* "*") (identifier "puVar26")) (; ";")) (expression_statement "Output_section_incremental_inputs<64,false> *unaff_s4;" (comma_expression "Output_section_incremental_inputs<64,false> *unaff_s4" (binary_expression "Output_section_incremental_inputs<64" (identifier "Output_section_incremental_inputs") (< "<") (number_literal "64")) (, ",") (binary_expression "false> *unaff_s4" (false "false") (> ">") (pointer_expression "*unaff_s4" (* "*") (identifier "unaff_s4")))) (; ";")) (declaration "int unaff_s6;" (primitive_type "int") (identifier "unaff_s6") (; ";")) (declaration "code *pcVar27;" (type_identifier "code") (pointer_declarator "*pcVar27" (* "*") (identifier "pcVar27")) (; ";")) (declaration "int *piVar28;" (primitive_type "int") (pointer_declarator "*piVar28" (* "*") (identifier "piVar28")) (; ";")) (expression_statement "piVar28 = *(int **)(param_1 + 0x30);" (assignment_expression "piVar28 = *(int **)(param_1 + 0x30)" (identifier "piVar28") (= "=") (pointer_expression "*(int **)(param_1 + 0x30)" (* "*") (cast_expression "(int **)(param_1 + 0x30)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (expression_statement "pSVar21 = (Stringpool_template *)piVar28[10];" (assignment_expression "pSVar21 = (Stringpool_template *)piVar28[10]" (identifier "pSVar21") (= "=") (cast_expression "(Stringpool_template *)piVar28[10]" (( "(") (type_descriptor "Stringpool_template *" (type_identifier "Stringpool_template") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "piVar28[10]" (identifier "piVar28") ([ "[") (number_literal "10") (] "]")))) (; ";")) (if_statement "if (-1 < *(int *)(param_1 + 0x20) << 2) goto LAB_00119650;" (if "if") (parenthesized_expression "(-1 < *(int *)(param_1 + 0x20) << 2)" (( "(") (binary_expression "-1 < *(int *)(param_1 + 0x20) << 2" (number_literal "-1") (< "<") (binary_expression "*(int *)(param_1 + 0x20) << 2" (pointer_expression "*(int *)(param_1 + 0x20)" (* "*") (cast_expression "(int *)(param_1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "2"))) () ")")) (goto_statement "goto LAB_00119650;" (goto "goto") (statement_identifier "LAB_00119650") (; ";"))) (if_statement "if (-1 < *(int *)(param_1 + 0x20) << 1) goto LAB_00119634;" (if "if") (parenthesized_expression "(-1 < *(int *)(param_1 + 0x20) << 1)" (( "(") (binary_expression "-1 < *(int *)(param_1 + 0x20) << 1" (number_literal "-1") (< "<") (binary_expression "*(int *)(param_1 + 0x20) << 1" (pointer_expression "*(int *)(param_1 + 0x20)" (* "*") (cast_expression "(int *)(param_1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "1"))) () ")")) (goto_statement "goto LAB_00119634;" (goto "goto") (statement_identifier "LAB_00119634") (; ";"))) (expression_statement "iVar1 = *(int *)(param_1 + 0x10);" (assignment_expression "iVar1 = *(int *)(param_1 + 0x10)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(param_1 + 0x10)" (* "*") (cast_expression "(int *)(param_1 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10)" (( "(") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "puVar20 = *(undefined **)(param_1 + 0x14);" (assignment_expression "puVar20 = *(undefined **)(param_1 + 0x14)" (identifier "puVar20") (= "=") (pointer_expression "*(undefined **)(param_1 + 0x14)" (* "*") (cast_expression "(undefined **)(param_1 + 0x14)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x14)" (( "(") (binary_expression "param_1 + 0x14" (identifier "param_1") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (if_statement "if (-1 < *(int *)(param_1 + 0x18)) {\n    puVar13 = *(undefined **)(param_2 + 8);\n    puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));\n    in_t1 = *(undefined **)(param_2 + 0xc);\n    if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }" (if "if") (parenthesized_expression "(-1 < *(int *)(param_1 + 0x18))" (( "(") (binary_expression "-1 < *(int *)(param_1 + 0x18)" (number_literal "-1") (< "<") (pointer_expression "*(int *)(param_1 + 0x18)" (* "*") (cast_expression "(int *)(param_1 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x18)" (( "(") (binary_expression "param_1 + 0x18" (identifier "param_1") (+ "+") (number_literal "0x18")) () ")"))))) () ")")) (compound_statement "{\n    puVar13 = *(undefined **)(param_2 + 8);\n    puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));\n    in_t1 = *(undefined **)(param_2 + 0xc);\n    if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }\n  }" ({ "{") (expression_statement "puVar13 = *(undefined **)(param_2 + 8);" (assignment_expression "puVar13 = *(undefined **)(param_2 + 8)" (identifier "puVar13") (= "=") (pointer_expression "*(undefined **)(param_2 + 8)" (* "*") (cast_expression "(undefined **)(param_2 + 8)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));" (assignment_expression "puVar8 = (undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18))" (identifier "puVar8") (= "=") (cast_expression "(undefined *)\n             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18))" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18))" (( "(") (binary_expression "(uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18)" (call_expression "(uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(puVar20 + *(int *)(param_1 + 0x1c) < puVar20)" (( "(") (binary_expression "puVar20 + *(int *)(param_1 + 0x1c) < puVar20" (binary_expression "puVar20 + *(int *)(param_1 + 0x1c)" (identifier "puVar20") (+ "+") (pointer_expression "*(int *)(param_1 + 0x1c)" (* "*") (cast_expression "(int *)(param_1 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1c)" (( "(") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c")) () ")"))))) (< "<") (identifier "puVar20")) () ")"))) (+ "+") (pointer_expression "*(int *)(param_1 + 0x18)" (* "*") (cast_expression "(int *)(param_1 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x18)" (( "(") (binary_expression "param_1 + 0x18" (identifier "param_1") (+ "+") (number_literal "0x18")) () ")"))))) () ")")))) (; ";")) (expression_statement "in_t1 = *(undefined **)(param_2 + 0xc);" (assignment_expression "in_t1 = *(undefined **)(param_2 + 0xc)" (identifier "in_t1") (= "=") (pointer_expression "*(undefined **)(param_2 + 0xc)" (* "*") (cast_expression "(undefined **)(param_2 + 0xc)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_2 + 0xc)" (( "(") (binary_expression "param_2 + 0xc" (identifier "param_2") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (if_statement "if (((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }" (if "if") (parenthesized_expression "(((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1))))" (( "(") (binary_expression "((int)puVar8 <= (int)puVar13) &&\n       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))" (parenthesized_expression "((int)puVar8 <= (int)puVar13)" (( "(") (binary_expression "(int)puVar8 <= (int)puVar13" (cast_expression "(int)puVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar8")) (<= "<=") (cast_expression "(int)puVar13" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar13"))) () ")")) (&& "&&") (parenthesized_expression "((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))" (( "(") (parenthesized_expression "(puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1))" (( "(") (binary_expression "puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)" (binary_expression "puVar8 != puVar13" (identifier "puVar8") (!= "!=") (identifier "puVar13")) (|| "||") (parenthesized_expression "(puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)" (( "(") (binary_expression "puVar20 + *(int *)(param_1 + 0x1c) <= in_t1" (binary_expression "puVar20 + *(int *)(param_1 + 0x1c)" (identifier "puVar20") (+ "+") (pointer_expression "*(int *)(param_1 + 0x1c)" (* "*") (cast_expression "(int *)(param_1 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1c)" (( "(") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c")) () ")"))))) (<= "<=") (identifier "in_t1")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n      iVar9 = piVar28[0xe];\n      piVar22 = *(int **)(param_2 + 0x10);\n      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));\n      unaff_s4 = param_1;\n      unaff_s6 = param_2;\n      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;\n      iVar19 = *(int *)(iVar9 + 0x18);\n      puVar17 = *(undefined4 **)(iVar9 + 0x1c);\n      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;\n      uVar2 = *(uint *)(iVar9 + 0x10);\n      puVar8 = *(undefined **)(iVar9 + 0x14);\n      if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }\n    }" ({ "{") (expression_statement "iVar9 = piVar28[0xe];" (assignment_expression "iVar9 = piVar28[0xe]" (identifier "iVar9") (= "=") (subscript_expression "piVar28[0xe]" (identifier "piVar28") ([ "[") (number_literal "0xe") (] "]"))) (; ";")) (expression_statement "piVar22 = *(int **)(param_2 + 0x10);" (assignment_expression "piVar22 = *(int **)(param_2 + 0x10)" (identifier "piVar22") (= "=") (pointer_expression "*(int **)(param_2 + 0x10)" (* "*") (cast_expression "(int **)(param_2 + 0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_2 + 0x10)" (( "(") (binary_expression "param_2 + 0x10" (identifier "param_2") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));" (assignment_expression "puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c))" (identifier "puVar25") (= "=") (cast_expression "(uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c))" (( "(") (type_descriptor "uchar *" (type_identifier "uchar") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar22 + *(int *)(param_1 + 0x1c))" (( "(") (binary_expression "(int)piVar22 + *(int *)(param_1 + 0x1c)" (cast_expression "(int)piVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar22")) (+ "+") (pointer_expression "*(int *)(param_1 + 0x1c)" (* "*") (cast_expression "(int *)(param_1 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1c)" (( "(") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c")) () ")"))))) () ")")))) (; ";")) (expression_statement "unaff_s4 = param_1;" (assignment_expression "unaff_s4 = param_1" (identifier "unaff_s4") (= "=") (identifier "param_1")) (; ";")) (expression_statement "unaff_s6 = param_2;" (assignment_expression "unaff_s6 = param_2" (identifier "unaff_s6") (= "=") (identifier "param_2")) (; ";")) (if_statement "if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;" (if "if") (parenthesized_expression "(-1 < *(int *)(iVar9 + 0x20) << 2)" (( "(") (binary_expression "-1 < *(int *)(iVar9 + 0x20) << 2" (number_literal "-1") (< "<") (binary_expression "*(int *)(iVar9 + 0x20) << 2" (pointer_expression "*(int *)(iVar9 + 0x20)" (* "*") (cast_expression "(int *)(iVar9 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x20)" (( "(") (binary_expression "iVar9 + 0x20" (identifier "iVar9") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "2"))) () ")")) (goto_statement "goto LAB_00119650;" (goto "goto") (statement_identifier "LAB_00119650") (; ";"))) (expression_statement "iVar19 = *(int *)(iVar9 + 0x18);" (assignment_expression "iVar19 = *(int *)(iVar9 + 0x18)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(iVar9 + 0x18)" (* "*") (cast_expression "(int *)(iVar9 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x18)" (( "(") (binary_expression "iVar9 + 0x18" (identifier "iVar9") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "puVar17 = *(undefined4 **)(iVar9 + 0x1c);" (assignment_expression "puVar17 = *(undefined4 **)(iVar9 + 0x1c)" (identifier "puVar17") (= "=") (pointer_expression "*(undefined4 **)(iVar9 + 0x1c)" (* "*") (cast_expression "(undefined4 **)(iVar9 + 0x1c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 0x1c)" (( "(") (binary_expression "iVar9 + 0x1c" (identifier "iVar9") (+ "+") (number_literal "0x1c")) () ")"))))) (; ";")) (if_statement "if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;" (if "if") (parenthesized_expression "(-1 < *(int *)(iVar9 + 0x20) << 1)" (( "(") (binary_expression "-1 < *(int *)(iVar9 + 0x20) << 1" (number_literal "-1") (< "<") (binary_expression "*(int *)(iVar9 + 0x20) << 1" (pointer_expression "*(int *)(iVar9 + 0x20)" (* "*") (cast_expression "(int *)(iVar9 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x20)" (( "(") (binary_expression "iVar9 + 0x20" (identifier "iVar9") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "1"))) () ")")) (goto_statement "goto LAB_00119634;" (goto "goto") (statement_identifier "LAB_00119634") (; ";"))) (expression_statement "uVar2 = *(uint *)(iVar9 + 0x10);" (assignment_expression "uVar2 = *(uint *)(iVar9 + 0x10)" (identifier "uVar2") (= "=") (pointer_expression "*(uint *)(iVar9 + 0x10)" (* "*") (cast_expression "(uint *)(iVar9 + 0x10)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x10)" (( "(") (binary_expression "iVar9 + 0x10" (identifier "iVar9") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "puVar8 = *(undefined **)(iVar9 + 0x14);" (assignment_expression "puVar8 = *(undefined **)(iVar9 + 0x14)" (identifier "puVar8") (= "=") (pointer_expression "*(undefined **)(iVar9 + 0x14)" (* "*") (cast_expression "(undefined **)(iVar9 + 0x14)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 0x14)" (( "(") (binary_expression "iVar9 + 0x14" (identifier "iVar9") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (if_statement "if (-1 < iVar19) {\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }" (if "if") (parenthesized_expression "(-1 < iVar19)" (( "(") (binary_expression "-1 < iVar19" (number_literal "-1") (< "<") (identifier "iVar19")) () ")")) (compound_statement "{\n        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);\n        if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }\n      }" ({ "{") (expression_statement "puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);" (assignment_expression "puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19)" (identifier "puVar3") (= "=") (cast_expression "(undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19)" (( "(") (binary_expression "(uint)(puVar8 + (int)puVar17 < puVar8) + iVar19" (call_expression "(uint)(puVar8 + (int)puVar17 < puVar8)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(puVar8 + (int)puVar17 < puVar8)" (( "(") (binary_expression "puVar8 + (int)puVar17 < puVar8" (binary_expression "puVar8 + (int)puVar17" (identifier "puVar8") (+ "+") (cast_expression "(int)puVar17" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar17"))) (< "<") (identifier "puVar8")) () ")"))) (+ "+") (identifier "iVar19")) () ")")))) (; ";")) (if_statement "if ((int)puVar3 <= (int)puVar13) {\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }" (if "if") (parenthesized_expression "((int)puVar3 <= (int)puVar13)" (( "(") (binary_expression "(int)puVar3 <= (int)puVar13" (cast_expression "(int)puVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar3")) (<= "<=") (cast_expression "(int)puVar13" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar13"))) () ")")) (compound_statement "{\n          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);\n          iVar9 = 0;\n          if (puVar3 == puVar13) goto LAB_001196c0;\nLAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);\n          piVar22 = (int *)((int)piVar22 + (int)puVar17);\n          if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }\n          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;\n          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();\n          puVar26 = *(undefined4 **)(puVar13 + 0x30);\n          piVar28 = (int *)*puVar26;\n          if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }\n          piVar22 = (int *)*piVar28;\n          if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }\n          uVar2 = piVar22[1];\n          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;\n          iVar1 = *(int *)(puVar20 + 0x318cd8);\n          goto LAB_00119868;\n        }" ({ "{") (expression_statement "uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);" (assignment_expression "uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17)" (identifier "uVar10") (= "=") (call_expression "(uint)(in_t1 < puVar8 + (int)puVar17)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(in_t1 < puVar8 + (int)puVar17)" (( "(") (binary_expression "in_t1 < puVar8 + (int)puVar17" (identifier "in_t1") (< "<") (binary_expression "puVar8 + (int)puVar17" (identifier "puVar8") (+ "+") (cast_expression "(int)puVar17" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar17")))) () ")")))) (; ";")) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" (identifier "iVar9") (= "=") (number_literal "0")) (; ";")) (if_statement "if (puVar3 == puVar13) goto LAB_001196c0;" (if "if") (parenthesized_expression "(puVar3 == puVar13)" (( "(") (binary_expression "puVar3 == puVar13" (identifier "puVar3") (== "==") (identifier "puVar13")) () ")")) (goto_statement "goto LAB_001196c0;" (goto "goto") (statement_identifier "LAB_001196c0") (; ";"))) (labeled_statement "LAB_0011940c:\n          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);" (statement_identifier "LAB_0011940c") (: ":") (expression_statement "uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);" (assignment_expression "uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10)" (identifier "uVar10") (= "=") (pointer_expression "*(uint *)(*(int *)(param_1 + 0x34) + 0x10)" (* "*") (cast_expression "(uint *)(*(int *)(param_1 + 0x34) + 0x10)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_1 + 0x34) + 0x10)" (( "(") (binary_expression "*(int *)(param_1 + 0x34) + 0x10" (pointer_expression "*(int *)(param_1 + 0x34)" (* "*") (cast_expression "(int *)(param_1 + 0x34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x34)" (( "(") (binary_expression "param_1 + 0x34" (identifier "param_1") (+ "+") (number_literal "0x34")) () ")")))) (+ "+") (number_literal "0x10")) () ")"))))) (; ";"))) (expression_statement "piVar22 = (int *)((int)piVar22 + (int)puVar17);" (assignment_expression "piVar22 = (int *)((int)piVar22 + (int)puVar17)" (identifier "piVar22") (= "=") (cast_expression "(int *)((int)piVar22 + (int)puVar17)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar22 + (int)puVar17)" (( "(") (binary_expression "(int)piVar22 + (int)puVar17" (cast_expression "(int)piVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar22")) (+ "+") (cast_expression "(int)puVar17" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar17"))) () ")")))) (; ";")) (if_statement "if (uVar10 < 0x20000000) {\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }" (if "if") (parenthesized_expression "(uVar10 < 0x20000000)" (( "(") (binary_expression "uVar10 < 0x20000000" (identifier "uVar10") (< "<") (number_literal "0x20000000")) () ")")) (compound_statement "{\n            puVar13 = (undefined *)(uVar10 << 2);\n            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);\n            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);\n            uVar5 = piVar28[1] - *piVar28 >> 2;\n            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;\n            uVar11 = piVar28[9] - 1;\n            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);\n            *(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n            puVar25[0] = '\x02';\n            puVar25[1] = '\0';\n            puVar25[2] = '\0';\n            puVar25[3] = '\0';\n            puVar25[0xc] = '\0';\n            puVar25[0xd] = '\0';\n            puVar25[0xe] = '\0';\n            puVar25[0xf] = '\0';\n            *(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;\n            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);\n            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);\n            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;\n            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;\n            uVar16 = 0x59f;\n            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }\n            piVar14 = (int *)((int)piVar22 + (int)puVar8);\n            puVar12 = puVar4;\n            if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }\n            (*(code *)PTR_operator_delete___004323dc)(puVar4);\n            iVar1 = piVar28[0x10];\n            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;\n            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;\n            if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }\n            goto LAB_00119628;\n          }" ({ "{") (expression_statement "puVar13 = (undefined *)(uVar10 << 2);" (assignment_expression "puVar13 = (undefined *)(uVar10 << 2)" (identifier "puVar13") (= "=") (cast_expression "(undefined *)(uVar10 << 2)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar10 << 2)" (( "(") (binary_expression "uVar10 << 2" (identifier "uVar10") (<< "<<") (number_literal "2")) () ")")))) (; ";")) (expression_statement "puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);" (assignment_expression "puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13)" (identifier "puVar4") (= "=") (cast_expression "(uint *)(*(code *)PTR_operator_new___004322dc)(puVar13)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_operator_new___004322dc)(puVar13)" (parenthesized_expression "(*(code *)PTR_operator_new___004322dc)" (( "(") (pointer_expression "*(code *)PTR_operator_new___004322dc" (* "*") (cast_expression "(code *)PTR_operator_new___004322dc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_operator_new___004322dc"))) () ")")) (argument_list "(puVar13)" (( "(") (identifier "puVar13") () ")"))))) (; ";")) (expression_statement "(*(code *)PTR_memset_00436850)(puVar4,0,puVar13);" (call_expression "(*(code *)PTR_memset_00436850)(puVar4,0,puVar13)" (parenthesized_expression "(*(code *)PTR_memset_00436850)" (( "(") (pointer_expression "*(code *)PTR_memset_00436850" (* "*") (cast_expression "(code *)PTR_memset_00436850" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_memset_00436850"))) () ")")) (argument_list "(puVar4,0,puVar13)" (( "(") (identifier "puVar4") (, ",") (number_literal "0") (, ",") (identifier "puVar13") () ")"))) (; ";")) (expression_statement "uVar5 = piVar28[1] - *piVar28 >> 2;" (assignment_expression "uVar5 = piVar28[1] - *piVar28 >> 2" (identifier "uVar5") (= "=") (binary_expression "piVar28[1] - *piVar28 >> 2" (binary_expression "piVar28[1] - *piVar28" (subscript_expression "piVar28[1]" (identifier "piVar28") ([ "[") (number_literal "1") (] "]")) (- "-") (pointer_expression "*piVar28" (* "*") (identifier "piVar28"))) (>> ">>") (number_literal "2"))) (; ";")) (if_statement "if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;" (if "if") (parenthesized_expression "(*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9])" (( "(") (binary_expression "*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]" (pointer_expression "*(uint *)(pSVar21 + 0x28)" (* "*") (cast_expression "(uint *)(pSVar21 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pSVar21 + 0x28)" (( "(") (binary_expression "pSVar21 + 0x28" (identifier "pSVar21") (+ "+") (number_literal "0x28")) () ")")))) (< "<") (cast_expression "(uint)piVar28[9]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "piVar28[9]" (identifier "piVar28") ([ "[") (number_literal "9") (] "]")))) () ")")) (goto_statement "goto LAB_001196a4;" (goto "goto") (statement_identifier "LAB_001196a4") (; ";"))) (expression_statement "uVar11 = piVar28[9] - 1;" (assignment_expression "uVar11 = piVar28[9] - 1" (identifier "uVar11") (= "=") (binary_expression "piVar28[9] - 1" (subscript_expression "piVar28[9]" (identifier "piVar28") ([ "[") (number_literal "9") (] "]")) (- "-") (number_literal "1"))) (; ";")) (expression_statement "uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4);" (assignment_expression "uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" (identifier "uVar11") (= "=") (pointer_expression "*(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" (* "*") (cast_expression "(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4)" (( "(") (binary_expression "*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +\n                              (uVar11 & 0x1fff) * 4" (pointer_expression "*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc)" (* "*") (cast_expression "(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc)" (( "(") (binary_expression "*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc" (pointer_expression "*(int *)(pSVar21 + 0x1c)" (* "*") (cast_expression "(int *)(pSVar21 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pSVar21 + 0x1c)" (( "(") (binary_expression "pSVar21 + 0x1c" (identifier "pSVar21") (+ "+") (number_literal "0x1c")) () ")")))) (+ "+") (binary_expression "(uVar11 >> 0xd) * 0xc" (parenthesized_expression "(uVar11 >> 0xd)" (( "(") (binary_expression "uVar11 >> 0xd" (identifier "uVar11") (>> ">>") (number_literal "0xd")) () ")")) (* "*") (number_literal "0xc"))) () ")")))) (+ "+") (binary_expression "(uVar11 & 0x1fff) * 4" (parenthesized_expression "(uVar11 & 0x1fff)" (( "(") (binary_expression "uVar11 & 0x1fff" (identifier "uVar11") (& "&") (number_literal "0x1fff")) () ")")) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "*(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "*(uint *)(puVar25 + 4) =\n                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (pointer_expression "*(uint *)(puVar25 + 4)" (* "*") (cast_expression "(uint *)(puVar25 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar25 + 4)" (( "(") (binary_expression "puVar25 + 4" (identifier "puVar25") (+ "+") (number_literal "4")) () ")")))) (= "=") (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" (( "(") (binary_expression "uVar5 >> 0x10" (identifier "uVar5") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" (( "(") (binary_expression "uVar5 >> 0x18" (identifier "uVar5") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" (( "(") (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" (( "(") (binary_expression "uVar5 & 0xff" (identifier "uVar5") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" (identifier "uVar5") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "puVar25[0] = '\x02';" (assignment_expression "puVar25[0] = '\x02'" (subscript_expression "puVar25[0]" (identifier "puVar25") ([ "[") (number_literal "0") (] "]")) (= "=") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) (; ";")) (expression_statement "puVar25[1] = '\0';" (assignment_expression "puVar25[1] = '\0'" (subscript_expression "puVar25[1]" (identifier "puVar25") ([ "[") (number_literal "1") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "puVar25[2] = '\0';" (assignment_expression "puVar25[2] = '\0'" (subscript_expression "puVar25[2]" (identifier "puVar25") ([ "[") (number_literal "2") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "puVar25[3] = '\0';" (assignment_expression "puVar25[3] = '\0'" (subscript_expression "puVar25[3]" (identifier "puVar25") ([ "[") (number_literal "3") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "puVar25[0xc] = '\0';" (assignment_expression "puVar25[0xc] = '\0'" (subscript_expression "puVar25[0xc]" (identifier "puVar25") ([ "[") (number_literal "0xc") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "puVar25[0xd] = '\0';" (assignment_expression "puVar25[0xd] = '\0'" (subscript_expression "puVar25[0xd]" (identifier "puVar25") ([ "[") (number_literal "0xd") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "puVar25[0xe] = '\0';" (assignment_expression "puVar25[0xe] = '\0'" (subscript_expression "puVar25[0xe]" (identifier "puVar25") ([ "[") (number_literal "0xe") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "puVar25[0xf] = '\0';" (assignment_expression "puVar25[0xf] = '\0'" (subscript_expression "puVar25[0xf]" (identifier "puVar25") ([ "[") (number_literal "0xf") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "*(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;" (assignment_expression "*(uint *)(puVar25 + 8) =\n                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000" (pointer_expression "*(uint *)(puVar25 + 8)" (* "*") (cast_expression "(uint *)(puVar25 + 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar25 + 8)" (( "(") (binary_expression "puVar25 + 8" (identifier "puVar25") (+ "+") (number_literal "8")) () ")")))) (= "=") (binary_expression "(((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +\n                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10" (binary_expression "(uVar11 >> 0x10) << 0x18" (parenthesized_expression "(uVar11 >> 0x10)" (( "(") (binary_expression "uVar11 >> 0x10" (identifier "uVar11") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar11 >> 0x18) << 0x10" (parenthesized_expression "(uVar11 >> 0x18)" (( "(") (binary_expression "uVar11 >> 0x18" (identifier "uVar11") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff)" (( "(") (binary_expression "(uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff" (binary_expression "(uVar11 & 0xff) << 8" (parenthesized_expression "(uVar11 & 0xff)" (( "(") (binary_expression "uVar11 & 0xff" (identifier "uVar11") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar11 >> 8 & 0xff" (binary_expression "uVar11 >> 8" (identifier "uVar11") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (ERROR "puVar6 = (uchar *)gold::" (assignment_expression "puVar6 = (uchar *)gold" (identifier "puVar6") (= "=") (cast_expression "(uchar *)gold" (( "(") (type_descriptor "uchar *" (type_identifier "uchar") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "gold"))) (: ":") (: ":")) (expression_statement "Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);" (comma_expression "Output_section_incremental_inputs<64,false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21)" (binary_expression "Output_section_incremental_inputs<64" (identifier "Output_section_incremental_inputs") (< "<") (number_literal "64")) (, ",") (binary_expression "false>::write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21)" (false "false") (> ">") (ERROR "::" (: ":") (: ":")) (call_expression "write_input_files\n                                        (param_1,puVar25,puVar25 + 0x10,pSVar21)" (identifier "write_input_files") (argument_list "(param_1,puVar25,puVar25 + 0x10,pSVar21)" (( "(") (identifier "param_1") (, ",") (identifier "puVar25") (, ",") (binary_expression "puVar25 + 0x10" (identifier "puVar25") (+ "+") (number_literal "0x10")) (, ",") (identifier "pSVar21") () ")"))))) (; ";")) (ERROR "iVar9 = gold::" (assignment_expression "iVar9 = gold" (identifier "iVar9") (= "=") (identifier "gold")) (: ":") (: ":")) (expression_statement "Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);" (comma_expression "Output_section_incremental_inputs<64,false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" (binary_expression "Output_section_incremental_inputs<64" (identifier "Output_section_incremental_inputs") (< "<") (number_literal "64")) (, ",") (binary_expression "false>::write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" (false "false") (> ">") (ERROR "::" (: ":") (: ":")) (call_expression "write_info_blocks\n                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" (identifier "write_info_blocks") (argument_list "(param_1,puVar25,puVar6,pSVar21,puVar4,uVar10)" (( "(") (identifier "param_1") (, ",") (identifier "puVar25") (, ",") (identifier "puVar6") (, ",") (identifier "pSVar21") (, ",") (identifier "puVar4") (, ",") (identifier "uVar10") () ")"))))) (; ";")) (if_statement "if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;" (if "if") (parenthesized_expression "(iVar9 - (int)puVar25 >> 0x1f != iVar1)" (( "(") (binary_expression "iVar9 - (int)puVar25 >> 0x1f != iVar1" (binary_expression "iVar9 - (int)puVar25 >> 0x1f" (binary_expression "iVar9 - (int)puVar25" (identifier "iVar9") (- "-") (cast_expression "(int)puVar25" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar25"))) (>> ">>") (number_literal "0x1f")) (!= "!=") (identifier "iVar1")) () ")")) (goto_statement "goto LAB_0011969c;" (goto "goto") (statement_identifier "LAB_0011969c") (; ";"))) (if_statement "if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;" (if "if") (parenthesized_expression "((undefined *)(iVar9 - (int)puVar25) != puVar20)" (( "(") (binary_expression "(undefined *)(iVar9 - (int)puVar25) != puVar20" (cast_expression "(undefined *)(iVar9 - (int)puVar25)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 - (int)puVar25)" (( "(") (binary_expression "iVar9 - (int)puVar25" (identifier "iVar9") (- "-") (cast_expression "(int)puVar25" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar25"))) () ")"))) (!= "!=") (identifier "puVar20")) () ")")) (goto_statement "goto LAB_0011969c;" (goto "goto") (statement_identifier "LAB_0011969c") (; ";"))) (expression_statement "uVar16 = 0x59f;" (assignment_expression "uVar16 = 0x59f" (identifier "uVar16") (= "=") (number_literal "0x59f")) (; ";")) (if_statement "if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }" (if "if") (parenthesized_expression "((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8))" (( "(") (binary_expression "(uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)" (parenthesized_expression "(uVar10 >> 0x1e != uVar2)" (( "(") (binary_expression "uVar10 >> 0x1e != uVar2" (binary_expression "uVar10 >> 0x1e" (identifier "uVar10") (>> ">>") (number_literal "0x1e")) (!= "!=") (identifier "uVar2")) () ")")) (|| "||") (parenthesized_expression "(puVar13 != puVar8)" (( "(") (binary_expression "puVar13 != puVar8" (identifier "puVar13") (!= "!=") (identifier "puVar8")) () ")"))) () ")")) (compound_statement "{\n              do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );\n            }" ({ "{") (do_statement "do {\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              } while( true );" (do "do") (compound_statement "{\n                (*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);\nLAB_0011969c:\n                uVar16 = 0x59c;\n              }" ({ "{") (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" (( "(") (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" (* "*") (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_do_gold_unreachable_004323c4"))) () ")")) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,\n                           PTR_s_alize_xindex_004323b4 + -0x37c8)" (( "(") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fcc" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x4fcc")) (, ",") (identifier "uVar16") (, ",") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x37c8" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x37c8")) () ")"))) (; ";")) (labeled_statement "LAB_0011969c:\n                uVar16 = 0x59c;" (statement_identifier "LAB_0011969c") (: ":") (expression_statement "uVar16 = 0x59c;" (assignment_expression "uVar16 = 0x59c" (identifier "uVar16") (= "=") (number_literal "0x59c")) (; ";"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (expression_statement "piVar14 = (int *)((int)piVar22 + (int)puVar8);" (assignment_expression "piVar14 = (int *)((int)piVar22 + (int)puVar8)" (identifier "piVar14") (= "=") (cast_expression "(int *)((int)piVar22 + (int)puVar8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar22 + (int)puVar8)" (( "(") (binary_expression "(int)piVar22 + (int)puVar8" (cast_expression "(int)piVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar22")) (+ "+") (cast_expression "(int)puVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar8"))) () ")")))) (; ";")) (expression_statement "puVar12 = puVar4;" (assignment_expression "puVar12 = puVar4" (identifier "puVar12") (= "=") (identifier "puVar4")) (; ";")) (if_statement "if (uVar10 != 0) {\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }" (if "if") (parenthesized_expression "(uVar10 != 0)" (( "(") (binary_expression "uVar10 != 0" (identifier "uVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);\n            }" ({ "{") (do_statement "do {\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              } while (piVar23 != piVar14);" (do "do") (compound_statement "{\n                uVar2 = *puVar12;\n                piVar23 = piVar22 + 1;\n                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                puVar12 = puVar12 + 1;\n                piVar22 = piVar23;\n              }" ({ "{") (expression_statement "uVar2 = *puVar12;" (assignment_expression "uVar2 = *puVar12" (identifier "uVar2") (= "=") (pointer_expression "*puVar12" (* "*") (identifier "puVar12"))) (; ";")) (expression_statement "piVar23 = piVar22 + 1;" (assignment_expression "piVar23 = piVar22 + 1" (identifier "piVar23") (= "=") (binary_expression "piVar22 + 1" (identifier "piVar22") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "*piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (pointer_expression "*piVar22" (* "*") (identifier "piVar22")) (= "=") (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" (( "(") (binary_expression "uVar2 >> 0x10" (identifier "uVar2") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" (( "(") (binary_expression "uVar2 >> 0x18" (identifier "uVar2") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" (( "(") (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" (( "(") (binary_expression "uVar2 & 0xff" (identifier "uVar2") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" (identifier "uVar2") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "puVar12 = puVar12 + 1;" (assignment_expression "puVar12 = puVar12 + 1" (identifier "puVar12") (= "=") (binary_expression "puVar12 + 1" (identifier "puVar12") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "piVar22 = piVar23;" (assignment_expression "piVar22 = piVar23" (identifier "piVar22") (= "=") (identifier "piVar23")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(piVar23 != piVar14)" (( "(") (binary_expression "piVar23 != piVar14" (identifier "piVar23") (!= "!=") (identifier "piVar14")) () ")")) (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_operator_delete___004323dc)(puVar4);" (call_expression "(*(code *)PTR_operator_delete___004323dc)(puVar4)" (parenthesized_expression "(*(code *)PTR_operator_delete___004323dc)" (( "(") (pointer_expression "*(code *)PTR_operator_delete___004323dc" (* "*") (cast_expression "(code *)PTR_operator_delete___004323dc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_operator_delete___004323dc"))) () ")")) (argument_list "(puVar4)" (( "(") (identifier "puVar4") () ")"))) (; ";")) (expression_statement "iVar1 = piVar28[0x10];" (assignment_expression "iVar1 = piVar28[0x10]" (identifier "iVar1") (= "=") (subscript_expression "piVar28[0x10]" (identifier "piVar28") ([ "[") (number_literal "0x10") (] "]"))) (; ";")) (if_statement "if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;" (if "if") (parenthesized_expression "(-1 < *(int *)(iVar1 + 0x20) << 2)" (( "(") (binary_expression "-1 < *(int *)(iVar1 + 0x20) << 2" (number_literal "-1") (< "<") (binary_expression "*(int *)(iVar1 + 0x20) << 2" (pointer_expression "*(int *)(iVar1 + 0x20)" (* "*") (cast_expression "(int *)(iVar1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x20)" (( "(") (binary_expression "iVar1 + 0x20" (identifier "iVar1") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "2"))) () ")")) (goto_statement "goto LAB_00119650;" (goto "goto") (statement_identifier "LAB_00119650") (; ";"))) (if_statement "if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;" (if "if") (parenthesized_expression "(-1 < *(int *)(iVar1 + 0x20) << 1)" (( "(") (binary_expression "-1 < *(int *)(iVar1 + 0x20) << 1" (number_literal "-1") (< "<") (binary_expression "*(int *)(iVar1 + 0x20) << 1" (pointer_expression "*(int *)(iVar1 + 0x20)" (* "*") (cast_expression "(int *)(iVar1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x20)" (( "(") (binary_expression "iVar1 + 0x20" (identifier "iVar1") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "1"))) () ")")) (goto_statement "goto LAB_00119634;" (goto "goto") (statement_identifier "LAB_00119634") (; ";"))) (if_statement "if (-1 < *(int *)(iVar1 + 0x18)) {\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }" (if "if") (parenthesized_expression "(-1 < *(int *)(iVar1 + 0x18))" (( "(") (binary_expression "-1 < *(int *)(iVar1 + 0x18)" (number_literal "-1") (< "<") (pointer_expression "*(int *)(iVar1 + 0x18)" (* "*") (cast_expression "(int *)(iVar1 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x18)" (( "(") (binary_expression "iVar1 + 0x18" (identifier "iVar1") (+ "+") (number_literal "0x18")) () ")"))))) () ")")) (compound_statement "{\n              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);\n              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);\n              if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }\n            }" ({ "{") (expression_statement "in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);" (assignment_expression "in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c)" (identifier "in_t1") (= "=") (binary_expression "*(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c)" (pointer_expression "*(undefined **)(iVar1 + 0x14)" (* "*") (cast_expression "(undefined **)(iVar1 + 0x14)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar1 + 0x14)" (( "(") (binary_expression "iVar1 + 0x14" (identifier "iVar1") (+ "+") (number_literal "0x14")) () ")")))) (+ "+") (pointer_expression "*(int *)(iVar1 + 0x1c)" (* "*") (cast_expression "(int *)(iVar1 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1c)" (( "(") (binary_expression "iVar1 + 0x1c" (identifier "iVar1") (+ "+") (number_literal "0x1c")) () ")")))))) (; ";")) (expression_statement "iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);" (assignment_expression "iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18)" (identifier "iVar1") (= "=") (binary_expression "(uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18)" (call_expression "(uint)(in_t1 < *(undefined **)(iVar1 + 0x14))" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(in_t1 < *(undefined **)(iVar1 + 0x14))" (( "(") (binary_expression "in_t1 < *(undefined **)(iVar1 + 0x14)" (identifier "in_t1") (< "<") (pointer_expression "*(undefined **)(iVar1 + 0x14)" (* "*") (cast_expression "(undefined **)(iVar1 + 0x14)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar1 + 0x14)" (( "(") (binary_expression "iVar1 + 0x14" (identifier "iVar1") (+ "+") (number_literal "0x14")) () ")"))))) () ")"))) (+ "+") (pointer_expression "*(int *)(iVar1 + 0x18)" (* "*") (cast_expression "(int *)(iVar1 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x18)" (( "(") (binary_expression "iVar1 + 0x18" (identifier "iVar1") (+ "+") (number_literal "0x18")) () ")")))))) (; ";")) (if_statement "if (iVar1 <= *(int *)(param_2 + 8)) {\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }" (if "if") (parenthesized_expression "(iVar1 <= *(int *)(param_2 + 8))" (( "(") (binary_expression "iVar1 <= *(int *)(param_2 + 8)" (identifier "iVar1") (<= "<=") (pointer_expression "*(int *)(param_2 + 8)" (* "*") (cast_expression "(int *)(param_2 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")"))))) () ")")) (compound_statement "{\n                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;\n                goto LAB_001195dc;\n              }" ({ "{") (if_statement "if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;" (if "if") (parenthesized_expression "(*(int *)(param_2 + 8) == iVar1)" (( "(") (binary_expression "*(int *)(param_2 + 8) == iVar1" (pointer_expression "*(int *)(param_2 + 8)" (* "*") (cast_expression "(int *)(param_2 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (== "==") (identifier "iVar1")) () ")")) (goto_statement "goto LAB_0011966c;" (goto "goto") (statement_identifier "LAB_0011966c") (; ";"))) (goto_statement "goto LAB_001195dc;" (goto "goto") (statement_identifier "LAB_001195dc") (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_00119628;" (goto "goto") (statement_identifier "LAB_00119628") (; ";")) (} "}"))) (expression_statement "puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;" (assignment_expression "puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8" (identifier "puVar20") (= "=") (identifier "PTR___cxa_throw_bad_array_new_length_004322e8")) (; ";")) (expression_statement "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();" (call_expression "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)()" (parenthesized_expression "(*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)" (( "(") (pointer_expression "*(code *)PTR___cxa_throw_bad_array_new_length_004322e8" (* "*") (cast_expression "(code *)PTR___cxa_throw_bad_array_new_length_004322e8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___cxa_throw_bad_array_new_length_004322e8"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar26 = *(undefined4 **)(puVar13 + 0x30);" (assignment_expression "puVar26 = *(undefined4 **)(puVar13 + 0x30)" (identifier "puVar26") (= "=") (pointer_expression "*(undefined4 **)(puVar13 + 0x30)" (* "*") (cast_expression "(undefined4 **)(puVar13 + 0x30)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar13 + 0x30)" (( "(") (binary_expression "puVar13 + 0x30" (identifier "puVar13") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (expression_statement "piVar28 = (int *)*puVar26;" (assignment_expression "piVar28 = (int *)*puVar26" (identifier "piVar28") (= "=") (cast_expression "(int *)*puVar26" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar26" (* "*") (identifier "puVar26")))) (; ";")) (if_statement "if (piVar28 == (int *)puVar26[1]) {\n            return puVar17;\n          }" (if "if") (parenthesized_expression "(piVar28 == (int *)puVar26[1])" (( "(") (binary_expression "piVar28 == (int *)puVar26[1]" (identifier "piVar28") (== "==") (cast_expression "(int *)puVar26[1]" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar26[1]" (identifier "puVar26") ([ "[") (number_literal "1") (] "]")))) () ")")) (compound_statement "{\n            return puVar17;\n          }" ({ "{") (return_statement "return puVar17;" (return "return") (identifier "puVar17") (; ";")) (} "}"))) (expression_statement "piVar22 = (int *)*piVar28;" (assignment_expression "piVar22 = (int *)*piVar28" (identifier "piVar22") (= "=") (cast_expression "(int *)*piVar28" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar28" (* "*") (identifier "piVar28")))) (; ";")) (if_statement "if ((int)puVar17 - iVar9 != piVar22[3]) {\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }" (if "if") (parenthesized_expression "((int)puVar17 - iVar9 != piVar22[3])" (( "(") (binary_expression "(int)puVar17 - iVar9 != piVar22[3]" (binary_expression "(int)puVar17 - iVar9" (cast_expression "(int)puVar17" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar17")) (- "-") (identifier "iVar9")) (!= "!=") (subscript_expression "piVar22[3]" (identifier "piVar22") ([ "[") (number_literal "3") (] "]"))) () ")")) (compound_statement "{\n            iVar1 = *(int *)(puVar20 + 0x318cd8);\n            goto LAB_00119850;\n          }" ({ "{") (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(puVar20 + 0x318cd8)" (* "*") (cast_expression "(int *)(puVar20 + 0x318cd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x318cd8)" (( "(") (binary_expression "puVar20 + 0x318cd8" (identifier "puVar20") (+ "+") (number_literal "0x318cd8")) () ")"))))) (; ";")) (goto_statement "goto LAB_00119850;" (goto "goto") (statement_identifier "LAB_00119850") (; ";")) (} "}"))) (expression_statement "uVar2 = piVar22[1];" (assignment_expression "uVar2 = piVar22[1]" (identifier "uVar2") (= "=") (subscript_expression "piVar22[1]" (identifier "piVar22") ([ "[") (number_literal "1") (] "]"))) (; ";")) (if_statement "if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;" (if "if") (parenthesized_expression "(uVar2 <= *(uint *)(iVar19 + 0x28))" (( "(") (binary_expression "uVar2 <= *(uint *)(iVar19 + 0x28)" (identifier "uVar2") (<= "<=") (pointer_expression "*(uint *)(iVar19 + 0x28)" (* "*") (cast_expression "(uint *)(iVar19 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x28)" (( "(") (binary_expression "iVar19 + 0x28" (identifier "iVar19") (+ "+") (number_literal "0x28")) () ")"))))) () ")")) (goto_statement "goto LAB_0011977c;" (goto "goto") (statement_identifier "LAB_0011977c") (; ";"))) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(puVar20 + 0x318cd8)" (* "*") (cast_expression "(int *)(puVar20 + 0x318cd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x318cd8)" (( "(") (binary_expression "puVar20 + 0x318cd8" (identifier "puVar20") (+ "+") (number_literal "0x318cd8")) () ")"))))) (; ";")) (goto_statement "goto LAB_00119868;" (goto "goto") (statement_identifier "LAB_00119868") (; ";")) (} "}"))) (} "}"))) (} "}"))) (} "}"))) (labeled_statement "LAB_00119628:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" (statement_identifier "LAB_00119628") (: ":") (expression_statement "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54)" (identifier "pcVar27") (= "=") (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" (( "(") (binary_expression "PTR_LAB_00434040 + 0x2f54" (identifier "PTR_LAB_00434040") (+ "+") (number_literal "0x2f54")) () ")")))) (; ";"))) (labeled_statement "LAB_0011962c:\n  while( true ) {\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" (statement_identifier "LAB_0011962c") (: ":") (while_statement "while( true ) {\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n    (*pcVar27)();\nLAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);\n    unaff_s4 = param_1;\n    unaff_s6 = param_2;\nLAB_00119650:\n    param_2 = unaff_s6;\n    param_1 = unaff_s4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);\nLAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);\n    if (in_t1 == (undefined *)0x0) break;\n    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);\n  }" ({ "{") (expression_statement "(*pcVar27)();" (call_expression "(*pcVar27)()" (parenthesized_expression "(*pcVar27)" (( "(") (pointer_expression "*pcVar27" (* "*") (identifier "pcVar27")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_00119634:\n    (*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);" (statement_identifier "LAB_00119634") (: ":") (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" (( "(") (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" (* "*") (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_do_gold_unreachable_004323c4"))) () ")")) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8)" (( "(") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x4fe0")) (, ",") (number_literal "0xcf") (, ",") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x36c8" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x36c8")) () ")"))) (; ";"))) (expression_statement "unaff_s4 = param_1;" (assignment_expression "unaff_s4 = param_1" (identifier "unaff_s4") (= "=") (identifier "param_1")) (; ";")) (expression_statement "unaff_s6 = param_2;" (assignment_expression "unaff_s6 = param_2" (identifier "unaff_s6") (= "=") (identifier "param_2")) (; ";")) (labeled_statement "LAB_00119650:\n    param_2 = unaff_s6;" (statement_identifier "LAB_00119650") (: ":") (expression_statement "param_2 = unaff_s6;" (assignment_expression "param_2 = unaff_s6" (identifier "param_2") (= "=") (identifier "unaff_s6")) (; ";"))) (expression_statement "param_1 = unaff_s4;" (assignment_expression "param_1 = unaff_s4" (identifier "param_1") (= "=") (identifier "unaff_s4")) (; ";")) (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" (( "(") (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" (* "*") (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_do_gold_unreachable_004323c4"))) () ")")) (argument_list "(PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc)" (( "(") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x4fe0")) (, ",") (number_literal "0xe3") (, ",") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x36bc" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x36bc")) () ")"))) (; ";")) (labeled_statement "LAB_0011966c:\n    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);" (statement_identifier "LAB_0011966c") (: ":") (expression_statement "in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);" (assignment_expression "in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1)" (identifier "in_t1") (= "=") (cast_expression "(undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(uint)(*(undefined **)(param_2 + 0xc) < in_t1)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*(undefined **)(param_2 + 0xc) < in_t1)" (( "(") (binary_expression "*(undefined **)(param_2 + 0xc) < in_t1" (pointer_expression "*(undefined **)(param_2 + 0xc)" (* "*") (cast_expression "(undefined **)(param_2 + 0xc)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_2 + 0xc)" (( "(") (binary_expression "param_2 + 0xc" (identifier "param_2") (+ "+") (number_literal "0xc")) () ")")))) (< "<") (identifier "in_t1")) () ")"))))) (; ";"))) (if_statement "if (in_t1 == (undefined *)0x0) break;" (if "if") (parenthesized_expression "(in_t1 == (undefined *)0x0)" (( "(") (binary_expression "in_t1 == (undefined *)0x0" (identifier "in_t1") (== "==") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54)" (identifier "pcVar27") (= "=") (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" (( "(") (binary_expression "PTR_LAB_00434040 + 0x2f54" (identifier "PTR_LAB_00434040") (+ "+") (number_literal "0x2f54")) () ")")))) (; ";")) (} "}")))) (labeled_statement "LAB_001195dc:\n  puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5);" (statement_identifier "LAB_001195dc") (: ":") (expression_statement "puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5);" (comma_expression "puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64,false>::write_got_plt\n                      ((uchar *)param_1,param_5)" (binary_expression "puVar17 = (undefined4 *)\n            gold::Output_section_incremental_inputs<64" (assignment_expression "puVar17 = (undefined4 *)\n            gold" (identifier "puVar17") (= "=") (cast_expression "(undefined4 *)\n            gold" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "gold"))) (ERROR "::Output_section_incremental_inputs" (: ":") (: ":") (identifier "Output_section_incremental_inputs")) (< "<") (number_literal "64")) (, ",") (binary_expression "false>::write_got_plt\n                      ((uchar *)param_1,param_5)" (false "false") (> ">") (ERROR "::" (: ":") (: ":")) (call_expression "write_got_plt\n                      ((uchar *)param_1,param_5)" (identifier "write_got_plt") (argument_list "((uchar *)param_1,param_5)" (( "(") (cast_expression "(uchar *)param_1" (( "(") (type_descriptor "uchar *" (type_identifier "uchar") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1")) (, ",") (identifier "param_5") () ")"))))) (; ";"))) (return_statement "return puVar17;" (return "return") (identifier "puVar17") (; ";")) (labeled_statement "LAB_001196a4:\n  iVar9 = 0x108;" (statement_identifier "LAB_001196a4") (: ":") (expression_statement "iVar9 = 0x108;" (assignment_expression "iVar9 = 0x108" (identifier "iVar9") (= "=") (number_literal "0x108")) (; ";"))) (expression_statement "puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);" (assignment_expression "puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578)" (identifier "puVar17") (= "=") (cast_expression "(undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_alize_xindex_004323b4 + -0x3578)" (( "(") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x3578" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x3578")) () ")")))) (; ";")) (expression_statement "puVar13 = PTR_LAB_0043220c + 0x46d4;" (assignment_expression "puVar13 = PTR_LAB_0043220c + 0x46d4" (identifier "puVar13") (= "=") (binary_expression "PTR_LAB_0043220c + 0x46d4" (identifier "PTR_LAB_0043220c") (+ "+") (number_literal "0x46d4"))) (; ";")) (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)();" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)()" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004323c4)" (( "(") (pointer_expression "*(code *)PTR_do_gold_unreachable_004323c4" (* "*") (cast_expression "(code *)PTR_do_gold_unreachable_004323c4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_do_gold_unreachable_004323c4"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar10 = extraout_v1;" (assignment_expression "uVar10 = extraout_v1" (identifier "uVar10") (= "=") (identifier "extraout_v1")) (; ";")) (labeled_statement "LAB_001196c0:\n  if (uVar10 != 0) goto code_r0x001196c8;" (statement_identifier "LAB_001196c0") (: ":") (if_statement "if (uVar10 != 0) goto code_r0x001196c8;" (if "if") (parenthesized_expression "(uVar10 != 0)" (( "(") (binary_expression "uVar10 != 0" (identifier "uVar10") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto code_r0x001196c8;" (goto "goto") (statement_identifier "code_r0x001196c8") (; ";")))) (goto_statement "goto LAB_0011940c;" (goto "goto") (statement_identifier "LAB_0011940c") (; ";")) (labeled_statement "code_r0x001196c8:\n  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" (statement_identifier "code_r0x001196c8") (: ":") (expression_statement "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);" (assignment_expression "pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54)" (identifier "pcVar27") (= "=") (cast_expression "(code *)(PTR_LAB_00434040 + 0x2f54)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_00434040 + 0x2f54)" (( "(") (binary_expression "PTR_LAB_00434040 + 0x2f54" (identifier "PTR_LAB_00434040") (+ "+") (number_literal "0x2f54")) () ")")))) (; ";"))) (goto_statement "goto LAB_0011962c;" (goto "goto") (statement_identifier "LAB_0011962c") (; ";")) (while_statement "while( true ) {\n    uVar2 = piVar22[1];\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    puVar17 = puVar24;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);\n    iVar1 = *piVar28;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }\n    iVar15 = piVar22[6];\n    puVar24 = puVar17 + 6;\n    piVar14 = (int *)puVar26[1];\n    piVar28 = piVar28 + 1;\n    *puVar17 = uVar16;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar22[7];\n    *(ushort *)(puVar17 + 5) = uVar7;\n    puVar17[3] = iVar15;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar15 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar14 == piVar28) {\n      return puVar24;\n    }\n    piVar22 = (int *)*piVar28;\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;\n  }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n    uVar2 = piVar22[1];\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    puVar17 = puVar24;\n    if (*(uint *)(iVar19 + 0x28) < uVar2) break;\nLAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);\n    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);\n    iVar1 = *piVar28;\n    if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }\n    if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }\n    iVar15 = piVar22[6];\n    puVar24 = puVar17 + 6;\n    piVar14 = (int *)puVar26[1];\n    piVar28 = piVar28 + 1;\n    *puVar17 = uVar16;\n    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);\n    iVar18 = piVar22[7];\n    *(ushort *)(puVar17 + 5) = uVar7;\n    puVar17[3] = iVar15;\n    puVar17[4] = iVar18;\n    puVar17[2] = iVar15 >> 0x1f;\n    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);\n    if (piVar14 == piVar28) {\n      return puVar24;\n    }\n    piVar22 = (int *)*piVar28;\n    iVar1 = *(int *)(puVar20 + 0x318cd8);\n    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;\n  }" ({ "{") (expression_statement "uVar2 = piVar22[1];" (assignment_expression "uVar2 = piVar22[1]" (identifier "uVar2") (= "=") (subscript_expression "piVar22[1]" (identifier "piVar22") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(puVar20 + 0x318cd8)" (* "*") (cast_expression "(int *)(puVar20 + 0x318cd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x318cd8)" (( "(") (binary_expression "puVar20 + 0x318cd8" (identifier "puVar20") (+ "+") (number_literal "0x318cd8")) () ")"))))) (; ";")) (expression_statement "puVar17 = puVar24;" (assignment_expression "puVar17 = puVar24" (identifier "puVar17") (= "=") (identifier "puVar24")) (; ";")) (if_statement "if (*(uint *)(iVar19 + 0x28) < uVar2) break;" (if "if") (parenthesized_expression "(*(uint *)(iVar19 + 0x28) < uVar2)" (( "(") (binary_expression "*(uint *)(iVar19 + 0x28) < uVar2" (pointer_expression "*(uint *)(iVar19 + 0x28)" (* "*") (cast_expression "(uint *)(iVar19 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x28)" (( "(") (binary_expression "iVar19 + 0x28" (identifier "iVar19") (+ "+") (number_literal "0x28")) () ")")))) (< "<") (identifier "uVar2")) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "LAB_0011977c:\n    uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);" (statement_identifier "LAB_0011977c") (: ":") (expression_statement "uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4);" (assignment_expression "uVar16 = *(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" (identifier "uVar16") (= "=") (pointer_expression "*(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" (* "*") (cast_expression "(undefined4 *)\n              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4)" (( "(") (binary_expression "*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +\n              (uVar2 - 1 & 0x1fff) * 4" (pointer_expression "*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" (* "*") (cast_expression "(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc)" (( "(") (binary_expression "*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc" (pointer_expression "*(int *)(iVar19 + 0x1c)" (* "*") (cast_expression "(int *)(iVar19 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x1c)" (( "(") (binary_expression "iVar19 + 0x1c" (identifier "iVar19") (+ "+") (number_literal "0x1c")) () ")")))) (+ "+") (binary_expression "(uVar2 - 1 >> 0xd) * 0xc" (parenthesized_expression "(uVar2 - 1 >> 0xd)" (( "(") (binary_expression "uVar2 - 1 >> 0xd" (binary_expression "uVar2 - 1" (identifier "uVar2") (- "-") (number_literal "1")) (>> ">>") (number_literal "0xd")) () ")")) (* "*") (number_literal "0xc"))) () ")")))) (+ "+") (binary_expression "(uVar2 - 1 & 0x1fff) * 4" (parenthesized_expression "(uVar2 - 1 & 0x1fff)" (( "(") (binary_expression "uVar2 - 1 & 0x1fff" (binary_expression "uVar2 - 1" (identifier "uVar2") (- "-") (number_literal "1")) (& "&") (number_literal "0x1fff")) () ")")) (* "*") (number_literal "4"))) () ")"))))) (; ";"))) (expression_statement "uVar7 = (**(code **)(*piVar22 + 8))(piVar22);" (assignment_expression "uVar7 = (**(code **)(*piVar22 + 8))(piVar22)" (identifier "uVar7") (= "=") (call_expression "(**(code **)(*piVar22 + 8))(piVar22)" (parenthesized_expression "(**(code **)(*piVar22 + 8))" (( "(") (pointer_expression "**(code **)(*piVar22 + 8)" (* "*") (pointer_expression "*(code **)(*piVar22 + 8)" (* "*") (cast_expression "(code **)(*piVar22 + 8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar22 + 8)" (( "(") (binary_expression "*piVar22 + 8" (pointer_expression "*piVar22" (* "*") (identifier "piVar22")) (+ "+") (number_literal "8")) () ")"))))) () ")")) (argument_list "(piVar22)" (( "(") (identifier "piVar22") () ")")))) (; ";")) (expression_statement "iVar1 = *piVar28;" (assignment_expression "iVar1 = *piVar28" (identifier "iVar1") (= "=") (pointer_expression "*piVar28" (* "*") (identifier "piVar28"))) (; ";")) (if_statement "if (*(char *)(iVar1 + 0x20) != '\0') {\n      uVar7 = uVar7 | 0x8000;\n    }" (if "if") (parenthesized_expression "(*(char *)(iVar1 + 0x20) != '\0')" (( "(") (binary_expression "*(char *)(iVar1 + 0x20) != '\0'" (pointer_expression "*(char *)(iVar1 + 0x20)" (* "*") (cast_expression "(char *)(iVar1 + 0x20)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x20)" (( "(") (binary_expression "iVar1 + 0x20" (identifier "iVar1") (+ "+") (number_literal "0x20")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      uVar7 = uVar7 | 0x8000;\n    }" ({ "{") (expression_statement "uVar7 = uVar7 | 0x8000;" (assignment_expression "uVar7 = uVar7 | 0x8000" (identifier "uVar7") (= "=") (binary_expression "uVar7 | 0x8000" (identifier "uVar7") (| "|") (number_literal "0x8000"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(iVar1 + 0x21) != '\0') {\n      uVar7 = uVar7 | 0x4000;\n    }" (if "if") (parenthesized_expression "(*(char *)(iVar1 + 0x21) != '\0')" (( "(") (binary_expression "*(char *)(iVar1 + 0x21) != '\0'" (pointer_expression "*(char *)(iVar1 + 0x21)" (* "*") (cast_expression "(char *)(iVar1 + 0x21)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x21)" (( "(") (binary_expression "iVar1 + 0x21" (identifier "iVar1") (+ "+") (number_literal "0x21")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      uVar7 = uVar7 | 0x4000;\n    }" ({ "{") (expression_statement "uVar7 = uVar7 | 0x4000;" (assignment_expression "uVar7 = uVar7 | 0x4000" (identifier "uVar7") (= "=") (binary_expression "uVar7 | 0x4000" (identifier "uVar7") (| "|") (number_literal "0x4000"))) (; ";")) (} "}"))) (expression_statement "iVar15 = piVar22[6];" (assignment_expression "iVar15 = piVar22[6]" (identifier "iVar15") (= "=") (subscript_expression "piVar22[6]" (identifier "piVar22") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "puVar24 = puVar17 + 6;" (assignment_expression "puVar24 = puVar17 + 6" (identifier "puVar24") (= "=") (binary_expression "puVar17 + 6" (identifier "puVar17") (+ "+") (number_literal "6"))) (; ";")) (expression_statement "piVar14 = (int *)puVar26[1];" (assignment_expression "piVar14 = (int *)puVar26[1]" (identifier "piVar14") (= "=") (cast_expression "(int *)puVar26[1]" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar26[1]" (identifier "puVar26") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "piVar28 = piVar28 + 1;" (assignment_expression "piVar28 = piVar28 + 1" (identifier "piVar28") (= "=") (binary_expression "piVar28 + 1" (identifier "piVar28") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*puVar17 = uVar16;" (assignment_expression "*puVar17 = uVar16" (pointer_expression "*puVar17" (* "*") (identifier "puVar17")) (= "=") (identifier "uVar16")) (; ";")) (expression_statement "puVar17[1] = *(undefined4 *)(iVar1 + 0x10);" (assignment_expression "puVar17[1] = *(undefined4 *)(iVar1 + 0x10)" (subscript_expression "puVar17[1]" (identifier "puVar17") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*(undefined4 *)(iVar1 + 0x10)" (* "*") (cast_expression "(undefined4 *)(iVar1 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x10)" (( "(") (binary_expression "iVar1 + 0x10" (identifier "iVar1") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "iVar18 = piVar22[7];" (assignment_expression "iVar18 = piVar22[7]" (identifier "iVar18") (= "=") (subscript_expression "piVar22[7]" (identifier "piVar22") ([ "[") (number_literal "7") (] "]"))) (; ";")) (expression_statement "*(ushort *)(puVar17 + 5) = uVar7;" (assignment_expression "*(ushort *)(puVar17 + 5) = uVar7" (pointer_expression "*(ushort *)(puVar17 + 5)" (* "*") (cast_expression "(ushort *)(puVar17 + 5)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 5)" (( "(") (binary_expression "puVar17 + 5" (identifier "puVar17") (+ "+") (number_literal "5")) () ")")))) (= "=") (identifier "uVar7")) (; ";")) (expression_statement "puVar17[3] = iVar15;" (assignment_expression "puVar17[3] = iVar15" (subscript_expression "puVar17[3]" (identifier "puVar17") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "iVar15")) (; ";")) (expression_statement "puVar17[4] = iVar18;" (assignment_expression "puVar17[4] = iVar18" (subscript_expression "puVar17[4]" (identifier "puVar17") ([ "[") (number_literal "4") (] "]")) (= "=") (identifier "iVar18")) (; ";")) (expression_statement "puVar17[2] = iVar15 >> 0x1f;" (assignment_expression "puVar17[2] = iVar15 >> 0x1f" (subscript_expression "puVar17[2]" (identifier "puVar17") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "iVar15 >> 0x1f" (identifier "iVar15") (>> ">>") (number_literal "0x1f"))) (; ";")) (expression_statement "*(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);" (assignment_expression "*(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14)" (pointer_expression "*(short *)((int)puVar17 + 0x16)" (* "*") (cast_expression "(short *)((int)puVar17 + 0x16)" (( "(") (type_descriptor "short *" (sized_type_specifier "short" (short "short")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar17 + 0x16)" (( "(") (binary_expression "(int)puVar17 + 0x16" (cast_expression "(int)puVar17" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar17")) (+ "+") (number_literal "0x16")) () ")")))) (= "=") (cast_expression "(short)*(undefined4 *)(iVar1 + 0x14)" (( "(") (type_descriptor "short" (sized_type_specifier "short" (short "short"))) () ")") (pointer_expression "*(undefined4 *)(iVar1 + 0x14)" (* "*") (cast_expression "(undefined4 *)(iVar1 + 0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x14)" (( "(") (binary_expression "iVar1 + 0x14" (identifier "iVar1") (+ "+") (number_literal "0x14")) () ")")))))) (; ";")) (if_statement "if (piVar14 == piVar28) {\n      return puVar24;\n    }" (if "if") (parenthesized_expression "(piVar14 == piVar28)" (( "(") (binary_expression "piVar14 == piVar28" (identifier "piVar14") (== "==") (identifier "piVar28")) () ")")) (compound_statement "{\n      return puVar24;\n    }" ({ "{") (return_statement "return puVar24;" (return "return") (identifier "puVar24") (; ";")) (} "}"))) (expression_statement "piVar22 = (int *)*piVar28;" (assignment_expression "piVar22 = (int *)*piVar28" (identifier "piVar22") (= "=") (cast_expression "(int *)*piVar28" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar28" (* "*") (identifier "piVar28")))) (; ";")) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318cd8);" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318cd8)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(puVar20 + 0x318cd8)" (* "*") (cast_expression "(int *)(puVar20 + 0x318cd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x318cd8)" (( "(") (binary_expression "puVar20 + 0x318cd8" (identifier "puVar20") (+ "+") (number_literal "0x318cd8")) () ")"))))) (; ";")) (if_statement "if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;" (if "if") (parenthesized_expression "((int)puVar24 - iVar9 != piVar22[3])" (( "(") (binary_expression "(int)puVar24 - iVar9 != piVar22[3]" (binary_expression "(int)puVar24 - iVar9" (cast_expression "(int)puVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar24")) (- "-") (identifier "iVar9")) (!= "!=") (subscript_expression "piVar22[3]" (identifier "piVar22") ([ "[") (number_literal "3") (] "]"))) () ")")) (goto_statement "goto LAB_00119850;" (goto "goto") (statement_identifier "LAB_00119850") (; ";"))) (} "}"))) (labeled_statement "LAB_00119868:\n  pcVar27 = *(code **)(puVar20 + 0x318ce8);" (statement_identifier "LAB_00119868") (: ":") (expression_statement "pcVar27 = *(code **)(puVar20 + 0x318ce8);" (assignment_expression "pcVar27 = *(code **)(puVar20 + 0x318ce8)" (identifier "pcVar27") (= "=") (pointer_expression "*(code **)(puVar20 + 0x318ce8)" (* "*") (cast_expression "(code **)(puVar20 + 0x318ce8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar20 + 0x318ce8)" (( "(") (binary_expression "puVar20 + 0x318ce8" (identifier "puVar20") (+ "+") (number_literal "0x318ce8")) () ")"))))) (; ";"))) (expression_statement "puVar26 = (undefined4 *)(iVar1 + -0x3578);" (assignment_expression "puVar26 = (undefined4 *)(iVar1 + -0x3578)" (identifier "puVar26") (= "=") (cast_expression "(undefined4 *)(iVar1 + -0x3578)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + -0x3578)" (( "(") (binary_expression "iVar1 + -0x3578" (identifier "iVar1") (+ "+") (number_literal "-0x3578")) () ")")))) (; ";")) (expression_statement "iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4;" (assignment_expression "iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4" (identifier "iVar1") (= "=") (binary_expression "*(int *)(puVar20 + 0x318b30) + 0x46d4" (pointer_expression "*(int *)(puVar20 + 0x318b30)" (* "*") (cast_expression "(int *)(puVar20 + 0x318b30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x318b30)" (( "(") (binary_expression "puVar20 + 0x318b30" (identifier "puVar20") (+ "+") (number_literal "0x318b30")) () ")")))) (+ "+") (number_literal "0x46d4"))) (; ";")) (expression_statement "(*pcVar27)(iVar1,0x108,puVar26);" (call_expression "(*pcVar27)(iVar1,0x108,puVar26)" (parenthesized_expression "(*pcVar27)" (( "(") (pointer_expression "*pcVar27" (* "*") (identifier "pcVar27")) () ")")) (argument_list "(iVar1,0x108,puVar26)" (( "(") (identifier "iVar1") (, ",") (number_literal "0x108") (, ",") (identifier "puVar26") () ")"))) (; ";")) (expression_statement "puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30);" (assignment_expression "puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30)" (identifier "puVar17") (= "=") (cast_expression "(undefined4 *)**(int **)(iVar1 + 0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(int **)(iVar1 + 0x30)" (* "*") (pointer_expression "*(int **)(iVar1 + 0x30)" (* "*") (cast_expression "(int **)(iVar1 + 0x30)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar1 + 0x30)" (( "(") (binary_expression "iVar1 + 0x30" (identifier "iVar1") (+ "+") (number_literal "0x30")) () ")"))))))) (; ";")) (if_statement "if (puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]) {\n    return puVar26;\n  }" (if "if") (parenthesized_expression "(puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1])" (( "(") (binary_expression "puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]" (identifier "puVar17") (== "==") (cast_expression "(undefined4 *)(*(int **)(iVar1 + 0x30))[1]" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "(*(int **)(iVar1 + 0x30))[1]" (parenthesized_expression "(*(int **)(iVar1 + 0x30))" (( "(") (pointer_expression "*(int **)(iVar1 + 0x30)" (* "*") (cast_expression "(int **)(iVar1 + 0x30)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar1 + 0x30)" (( "(") (binary_expression "iVar1 + 0x30" (identifier "iVar1") (+ "+") (number_literal "0x30")) () ")")))) () ")")) ([ "[") (number_literal "1") (] "]")))) () ")")) (compound_statement "{\n    return puVar26;\n  }" ({ "{") (return_statement "return puVar26;" (return "return") (identifier "puVar26") (; ";")) (} "}"))) (expression_statement "iVar1 = *(int *)(pcVar27 + 0x318b34);" (assignment_expression "iVar1 = *(int *)(pcVar27 + 0x318b34)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(pcVar27 + 0x318b34)" (* "*") (cast_expression "(int *)(pcVar27 + 0x318b34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar27 + 0x318b34)" (( "(") (binary_expression "pcVar27 + 0x318b34" (identifier "pcVar27") (+ "+") (number_literal "0x318b34")) () ")"))))) (; ";")) (expression_statement "piVar28 = (int *)*puVar17;" (assignment_expression "piVar28 = (int *)*puVar17" (identifier "piVar28") (= "=") (cast_expression "(int *)*puVar17" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar17" (* "*") (identifier "puVar17")))) (; ";")) (expression_statement "uVar2 = (**(code **)(*piVar28 + 8))(piVar28);" (assignment_expression "uVar2 = (**(code **)(*piVar28 + 8))(piVar28)" (identifier "uVar2") (= "=") (call_expression "(**(code **)(*piVar28 + 8))(piVar28)" (parenthesized_expression "(**(code **)(*piVar28 + 8))" (( "(") (pointer_expression "**(code **)(*piVar28 + 8)" (* "*") (pointer_expression "*(code **)(*piVar28 + 8)" (* "*") (cast_expression "(code **)(*piVar28 + 8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar28 + 8)" (( "(") (binary_expression "*piVar28 + 8" (pointer_expression "*piVar28" (* "*") (identifier "piVar28")) (+ "+") (number_literal "8")) () ")"))))) () ")")) (argument_list "(piVar28)" (( "(") (identifier "piVar28") () ")")))) (; ";")) (if_statement "if (uVar2 < 6) {\n                    \n                    \n    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return puVar17;\n  }" (if "if") (parenthesized_expression "(uVar2 < 6)" (( "(") (binary_expression "uVar2 < 6" (identifier "uVar2") (< "<") (number_literal "6")) () ")")) (compound_statement "{\n                    \n                    \n    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();\n    return puVar17;\n  }" ({ "{") (expression_statement "puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();" (assignment_expression "puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))()" (identifier "puVar17") (= "=") (cast_expression "(undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))()" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))()" (parenthesized_expression "(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))" (( "(") (pointer_expression "*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950)" (* "*") (parenthesized_expression "(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950)" (( "(") (binary_expression "pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950" (binary_expression "pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4)" (identifier "pcVar27") (+ "+") (pointer_expression "*(int *)(iVar1 + -0x49fc + uVar2 * 4)" (* "*") (cast_expression "(int *)(iVar1 + -0x49fc + uVar2 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + -0x49fc + uVar2 * 4)" (( "(") (binary_expression "iVar1 + -0x49fc + uVar2 * 4" (binary_expression "iVar1 + -0x49fc" (identifier "iVar1") (+ "+") (number_literal "-0x49fc")) (+ "+") (binary_expression "uVar2 * 4" (identifier "uVar2") (* "*") (number_literal "4"))) () ")"))))) (+ "+") (number_literal "0x320950")) () ")"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (return_statement "return puVar17;" (return "return") (identifier "puVar17") (; ";")) (} "}"))) (expression_statement "uVar16 = 0x6f2;" (assignment_expression "uVar16 = 0x6f2" (identifier "uVar16") (= "=") (number_literal "0x6f2")) (; ";")) (do_statement "do {\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar16 = 0x618;\n  } while( true );" (do "do") (compound_statement "{\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);\n    (**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);\n    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);\n    iVar1 = iVar1 + -0x35d8;\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);\n    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);\n    uVar16 = 0x618;\n  }" ({ "{") (expression_statement "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;" (assignment_expression "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x377c" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" (* "*") (cast_expression "(int *)(pcVar27 + 0x318b34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar27 + 0x318b34)" (( "(") (binary_expression "pcVar27 + 0x318b34" (identifier "pcVar27") (+ "+") (number_literal "0x318b34")) () ")")))) (+ "+") (number_literal "-0x377c"))) (; ";")) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" (( "(") (pointer_expression "**(code **)(pcVar27 + 0x318b44)" (* "*") (pointer_expression "*(code **)(pcVar27 + 0x318b44)" (* "*") (cast_expression "(code **)(pcVar27 + 0x318b44)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar27 + 0x318b44)" (( "(") (binary_expression "pcVar27 + 0x318b44" (identifier "pcVar27") (+ "+") (number_literal "0x318b44")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1)" (( "(") (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x4fcc" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" (* "*") (cast_expression "(int *)(pcVar27 + 0x318b34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar27 + 0x318b34)" (( "(") (binary_expression "pcVar27 + 0x318b34" (identifier "pcVar27") (+ "+") (number_literal "0x318b34")) () ")")))) (+ "+") (number_literal "-0x4fcc")) (, ",") (identifier "uVar16") (, ",") (identifier "iVar1") () ")"))) (; ";")) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" (( "(") (pointer_expression "**(code **)(pcVar27 + 0x318b44)" (* "*") (pointer_expression "*(code **)(pcVar27 + 0x318b44)" (* "*") (cast_expression "(code **)(pcVar27 + 0x318b44)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar27 + 0x318b44)" (( "(") (binary_expression "pcVar27 + 0x318b44" (identifier "pcVar27") (+ "+") (number_literal "0x318b44")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4)" (( "(") (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x5bdc" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" (* "*") (cast_expression "(int *)(pcVar27 + 0x318b34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar27 + 0x318b34)" (( "(") (binary_expression "pcVar27 + 0x318b34" (identifier "pcVar27") (+ "+") (number_literal "0x318b34")) () ")")))) (+ "+") (number_literal "-0x5bdc")) (, ",") (number_literal "0xa1") (, ",") (binary_expression "iVar1 + -0x36b4" (identifier "iVar1") (+ "+") (number_literal "-0x36b4")) () ")"))) (; ";")) (expression_statement "(**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);" (call_expression "(**(code **)(pcVar27 + 0x318b44))\n              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" (( "(") (pointer_expression "**(code **)(pcVar27 + 0x318b44)" (* "*") (pointer_expression "*(code **)(pcVar27 + 0x318b44)" (* "*") (cast_expression "(code **)(pcVar27 + 0x318b44)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar27 + 0x318b44)" (( "(") (binary_expression "pcVar27 + 0x318b44" (identifier "pcVar27") (+ "+") (number_literal "0x318b44")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578)" (( "(") (binary_expression "*(int *)(pcVar27 + 0x31898c) + 0x46d4" (pointer_expression "*(int *)(pcVar27 + 0x31898c)" (* "*") (cast_expression "(int *)(pcVar27 + 0x31898c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar27 + 0x31898c)" (( "(") (binary_expression "pcVar27 + 0x31898c" (identifier "pcVar27") (+ "+") (number_literal "0x31898c")) () ")")))) (+ "+") (number_literal "0x46d4")) (, ",") (number_literal "0x108") (, ",") (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x3578" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" (* "*") (cast_expression "(int *)(pcVar27 + 0x318b34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar27 + 0x318b34)" (( "(") (binary_expression "pcVar27 + 0x318b34" (identifier "pcVar27") (+ "+") (number_literal "0x318b34")) () ")")))) (+ "+") (number_literal "-0x3578")) () ")"))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;" (assignment_expression "iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x366c" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" (* "*") (cast_expression "(int *)(pcVar27 + 0x318b34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar27 + 0x318b34)" (( "(") (binary_expression "pcVar27 + 0x318b34" (identifier "pcVar27") (+ "+") (number_literal "0x318b34")) () ")")))) (+ "+") (number_literal "-0x366c"))) (; ";")) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" (( "(") (pointer_expression "**(code **)(pcVar27 + 0x318b44)" (* "*") (pointer_expression "*(code **)(pcVar27 + 0x318b44)" (* "*") (cast_expression "(code **)(pcVar27 + 0x318b44)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar27 + 0x318b44)" (( "(") (binary_expression "pcVar27 + 0x318b44" (identifier "pcVar27") (+ "+") (number_literal "0x318b44")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1)" (( "(") (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x5bdc" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" (* "*") (cast_expression "(int *)(pcVar27 + 0x318b34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar27 + 0x318b34)" (( "(") (binary_expression "pcVar27 + 0x318b34" (identifier "pcVar27") (+ "+") (number_literal "0x318b34")) () ")")))) (+ "+") (number_literal "-0x5bdc")) (, ",") (number_literal "0xaa") (, ",") (identifier "iVar1") () ")"))) (; ";")) (expression_statement "iVar1 = iVar1 + -0x35d8;" (assignment_expression "iVar1 = iVar1 + -0x35d8" (identifier "iVar1") (= "=") (binary_expression "iVar1 + -0x35d8" (identifier "iVar1") (+ "+") (number_literal "-0x35d8"))) (; ";")) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" (( "(") (pointer_expression "**(code **)(pcVar27 + 0x318b44)" (* "*") (pointer_expression "*(code **)(pcVar27 + 0x318b44)" (* "*") (cast_expression "(code **)(pcVar27 + 0x318b44)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar27 + 0x318b44)" (( "(") (binary_expression "pcVar27 + 0x318b44" (identifier "pcVar27") (+ "+") (number_literal "0x318b44")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1)" (( "(") (binary_expression "*(int *)(pcVar27 + 0x318b34) + -0x4fe0" (pointer_expression "*(int *)(pcVar27 + 0x318b34)" (* "*") (cast_expression "(int *)(pcVar27 + 0x318b34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar27 + 0x318b34)" (( "(") (binary_expression "pcVar27 + 0x318b34" (identifier "pcVar27") (+ "+") (number_literal "0x318b34")) () ")")))) (+ "+") (number_literal "-0x4fe0")) (, ",") (number_literal "0x1043") (, ",") (identifier "iVar1") () ")"))) (; ";")) (expression_statement "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);" (call_expression "(**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4)" (parenthesized_expression "(**(code **)(pcVar27 + 0x318b44))" (( "(") (pointer_expression "**(code **)(pcVar27 + 0x318b44)" (* "*") (pointer_expression "*(code **)(pcVar27 + 0x318b44)" (* "*") (cast_expression "(code **)(pcVar27 + 0x318b44)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar27 + 0x318b44)" (( "(") (binary_expression "pcVar27 + 0x318b44" (identifier "pcVar27") (+ "+") (number_literal "0x318b44")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4)" (( "(") (binary_expression "*(int *)(pcVar27 + 0x31898c) + 0x44a8" (pointer_expression "*(int *)(pcVar27 + 0x31898c)" (* "*") (cast_expression "(int *)(pcVar27 + 0x31898c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar27 + 0x31898c)" (( "(") (binary_expression "pcVar27 + 0x31898c" (identifier "pcVar27") (+ "+") (number_literal "0x31898c")) () ")")))) (+ "+") (number_literal "0x44a8")) (, ",") (number_literal "0x5c8") (, ",") (binary_expression "iVar1 + -0x35b4" (identifier "iVar1") (+ "+") (number_literal "-0x35b4")) () ")"))) (; ";")) (expression_statement "uVar16 = 0x618;" (assignment_expression "uVar16 = 0x618" (identifier "uVar16") (= "=") (number_literal "0x618")) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (labeled_statement "LAB_00119850:\n  iVar1 = iVar1 + -0x3768;" (statement_identifier "LAB_00119850") (: ":") (expression_statement "iVar1 = iVar1 + -0x3768;" (assignment_expression "iVar1 = iVar1 + -0x3768" (identifier "iVar1") (= "=") (binary_expression "iVar1 + -0x3768" (identifier "iVar1") (+ "+") (number_literal "-0x3768"))) (; ";"))) (expression_statement "(**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);" (call_expression "(**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1)" (parenthesized_expression "(**(code **)(puVar20 + 0x318ce8))" (( "(") (pointer_expression "**(code **)(puVar20 + 0x318ce8)" (* "*") (pointer_expression "*(code **)(puVar20 + 0x318ce8)" (* "*") (cast_expression "(code **)(puVar20 + 0x318ce8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar20 + 0x318ce8)" (( "(") (binary_expression "puVar20 + 0x318ce8" (identifier "puVar20") (+ "+") (number_literal "0x318ce8")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1)" (( "(") (binary_expression "*(int *)(puVar20 + 0x318cd8) + -0x4fcc" (pointer_expression "*(int *)(puVar20 + 0x318cd8)" (* "*") (cast_expression "(int *)(puVar20 + 0x318cd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x318cd8)" (( "(") (binary_expression "puVar20 + 0x318cd8" (identifier "puVar20") (+ "+") (number_literal "0x318cd8")) () ")")))) (+ "+") (number_literal "-0x4fcc")) (, ",") (number_literal "0x5d2") (, ",") (identifier "iVar1") () ")"))) (; ";")) (goto_statement "goto LAB_00119868;" (goto "goto") (statement_identifier "LAB_00119868") (; ";")) (} "}"))

/* WARNING: Type propagation algorithm not settling */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* DWARF original prototype: void do_write(Output_section_incremental_inputs<64,_false> * this,
   Output_file * of) */

void __thiscall
var_11::var_1<64,_false>::do_write
          (var_1<64,_false> *this,type_8 *of)

{
  int var_2;
  type_1 var_22;
  type_1 *global_syms;
  type_1 var_18;
  type_2 *var_21;
  type_3 var_33;
  type_4 *var_6;
  type_5 *pOVar7;
  type_1 var_10;
  type_1 var_16;
  type_1 *var_26;
  type_1 extraout_v1;
  type_4 *var_7;
  int *var_28;
  int var_34;
  int var_3;
  type_6 uVar15;
  int *var_27;
  type_6 *var_32;
  int iVar18;
  int var_5;
  type_2 *var_8;
  type_2 *var_4;
  type_7 *strtab;
  int *var_25;
  type_2 *var_17;
  type_2 *var_9;
  type_6 *puVar23;
  var_1<64,_false> *unaff_s4;
  type_2 *var_23;
  type_8 *unaff_s6;
  type_9 *var_35;
  type_10 *pIVar26;
  type_11 in_stack_00000010;
  
  var_2 = *(int *)&(this->super_Output_section_data).super_Output_data.field_0x20;
  pIVar26 = this->inputs_;
  strtab = pIVar26->strtab_;
  if (-1 < var_2 << 2) goto LAB_00119650;
  var_5 = (int)(this->super_Output_section_data).super_Output_data.offset_;
  var_3 = *(int *)&(this->super_Output_section_data).super_Output_data.offset_;
  if (-1 < var_2 << 1) goto LAB_00119634;
  var_2 = *(int *)&(this->super_Output_section_data).super_Output_data.data_size_;
  var_4 = *(type_2 **)((int)&(this->super_Output_section_data).super_Output_data.data_size_ + 4);
  if (-1 < var_3) {
    var_7 = *(type_4 **)&of->file_size_;
    var_6 = (type_4 *)((type_1)(var_4 + var_5 < var_4) + var_3);
    var_8 = *(type_2 **)((int)&of->file_size_ + 4);
    if (((int)var_6 <= (int)var_7) && ((var_6 != var_7 || (var_4 + var_5 <= var_8)))) {
      pOVar7 = pIVar26->symtab_section_;
      var_25 = (int *)of->base_;
      var_3 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                        super_Output_data.field_0x20;
      var_17 = (type_2 *)((int)var_25 + var_5);
      unaff_s4 = this;
      unaff_s6 = of;
      if (-1 < var_3 << 2) goto LAB_00119650;
      var_5 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                        super_Output_data.offset_;
      var_32 = *(type_6 **)
                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                        super_Output_data.offset_ + 4);
      if (-1 < var_3 << 1) goto LAB_00119634;
      var_22 = *(type_1 *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                        super_Output_data.data_size_;
      var_9 = *(type_2 **)
                 ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                        super_Output_data.data_size_ + 4);
      if (-1 < var_5) {
        var_6 = (type_4 *)((type_1)(var_9 + (int)var_32 < var_9) + var_5);
        if ((int)var_6 <= (int)var_7) {
          var_10 = (type_1)(var_8 < var_9 + (int)var_32);
          var_3 = 0;
          if (var_6 == var_7) goto LAB_001196c0;
LAB_0011940c:
          var_10 = this->symtab_->output_count_;
          var_25 = (int *)((int)var_25 + (int)var_32);
          if (var_10 < 0x20000000) {
            var_23 = (type_2 *)(var_10 << 2);
            global_syms = (type_1 *)(*(type_9 *)PTR_operator_new___004322dc)(var_23);
            (*(type_9 *)PTR_memset_00436850)(global_syms,0,var_23);
            var_18 = (int)(pIVar26->inputs_).
                         super__Vector_base<var_11::Incremental_input_entry*,var_12::var_14<var_11::Incremental_input_entry*>var_13>
                         ._M_impl._M_finish -
                    (int)(pIVar26->inputs_).
                         super__Vector_base<var_11::Incremental_input_entry*,var_12::var_14<var_11::Incremental_input_entry*>var_13>
                         ._M_impl._M_start >> 2;
            if ((strtab->key_to_offset_).size_ < pIVar26->command_line_key_) goto LAB_001196a4;
            var_16 = pIVar26->command_line_key_ - 1;
            var_16 = *(type_1 *)((int)(strtab->key_to_offset_).chunks_.
                                   super__Vector_base<std::vector<var_15,var_12::var_14<var_15>var_13>,var_12::var_14<std::vector<var_15,var_12::var_14<var_15>var_13>var_13>var_13>
                                   ._M_impl._M_start[var_16 >> 0xd].
                                   super__Vector_base<var_15,var_12::var_14<var_15>var_13>._M_impl._M_start +
                             (var_16 & 0x1fff) * 4);
            *(type_1 *)(var_17 + 4) =
                 (((var_18 >> 0x10) << 0x18 | (var_18 >> 0x18) << 0x10) >> 0x10) +
                 ((var_18 & 0xff) << 8 | var_18 >> 8 & 0xff) * 0x10000;
            var_17[0] = '\x02';
            var_17[1] = '\0';
            var_17[2] = '\0';
            var_17[3] = '\0';
            var_17[0xc] = '\0';
            var_17[0xd] = '\0';
            var_17[0xe] = '\0';
            var_17[0xf] = '\0';
            *(type_1 *)(var_17 + 8) =
                 (((var_16 >> 0x10) << 0x18 | (var_16 >> 0x18) << 0x10) >> 0x10) +
                 ((var_16 & 0xff) << 8 | var_16 >> 8 & 0xff) * 0x10000;
            var_21 = var_19(this,var_17,var_17 + 0x10,strtab);
            var_21 = var_20(this,var_17,var_21,strtab,global_syms,var_10);
            if ((int)(var_21 + -(int)var_17) >> 0x1f != var_2) goto LAB_0011969c;
            if (var_21 + -(int)var_17 != var_4) goto LAB_0011969c;
            uVar15 = 0x59f;
            if ((var_10 >> 0x1e != var_22) || (var_23 != var_9)) {
              do {
                (*(type_9 *)PTR_do_gold_unreachable_004323c4)
                          (var_24 + -0x4fcc,uVar15,
                           var_24 + -0x37c8);
LAB_0011969c:
                uVar15 = 0x59c;
              } while( true );
            }
            var_28 = (int *)((int)var_25 + (int)var_9);
            var_26 = global_syms;
            if (var_10 != 0) {
              do {
                var_22 = *var_26;
                var_27 = var_25 + 1;
                *var_25 = (((var_22 >> 0x10) << 0x18 | (var_22 >> 0x18) << 0x10) >> 0x10) +
                           ((var_22 & 0xff) << 8 | var_22 >> 8 & 0xff) * 0x10000;
                var_26 = var_26 + 1;
                var_25 = var_27;
              } while (var_27 != var_28);
            }
            (*(type_9 *)PTR_operator_delete___004323dc)(global_syms);
            pOVar7 = pIVar26->got_plt_section_;
            var_2 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                             super_Output_data.field_0x20;
            if (-1 < var_2 << 2) goto LAB_00119650;
            var_3 = *(int *)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                              super_Output_data.offset_;
            var_5 = (int)(pOVar7->super_Output_section_data_build).super_Output_section_data.
                          super_Output_data.offset_;
            if (-1 < var_2 << 1) goto LAB_00119634;
            var_4 = *(type_2 **)
                       ((int)&(pOVar7->super_Output_section_data_build).super_Output_section_data.
                              super_Output_data.data_size_ + 4);
            if (-1 < var_3) {
              var_8 = var_4 + var_5;
              var_3 = (type_1)(var_8 < var_4) + var_3;
              if (var_3 <= *(int *)&of->file_size_) {
                if (*(int *)&of->file_size_ == var_3) goto LAB_0011966c;
                goto LAB_001195dc;
              }
            }
            goto LAB_00119628;
          }
          var_6 = PTR___cxa_throw_bad_array_new_length_004322e8;
          (*(type_9 *)PTR___cxa_throw_bad_array_new_length_004322e8)();
          puVar23 = *(type_6 **)(var_7 + 0x30);
          var_25 = (int *)*puVar23;
          if (var_25 == (int *)puVar23[1]) {
            return;
          }
          var_28 = (int *)*var_25;
          if ((int)var_32 - var_3 != var_28[3]) {
            var_2 = *(int *)(var_6 + 0x318cd8);
            goto LAB_00119850;
          }
          var_22 = var_28[1];
          if (var_22 <= *(type_1 *)(var_5 + 0x28)) goto LAB_0011977c;
          var_2 = *(int *)(var_6 + 0x318cd8);
          goto LAB_00119868;
        }
      }
    }
  }
LAB_00119628:
  var_35 = (type_9 *)(var_29 + 0x2f54);
LAB_0011962c:
  while( true ) {
    (*var_35)();
LAB_00119634:
    (*(type_9 *)PTR_do_gold_unreachable_004323c4)
              (var_24 + -0x4fe0,0xcf,var_24 + -0x36c8);
    unaff_s4 = this;
    unaff_s6 = of;
LAB_00119650:
    of = unaff_s6;
    this = unaff_s4;
    var_5 = 0xe3;
    (*(type_9 *)PTR_do_gold_unreachable_004323c4)
              (var_24 + -0x4fe0,0xe3,var_24 + -0x36bc);
LAB_0011966c:
    var_8 = (type_2 *)(type_1)(*(type_2 **)((int)&of->file_size_ + 4) < var_8);
    if (var_8 == (type_2 *)0x0) break;
    var_35 = (type_9 *)(var_29 + 0x2f54);
  }
LAB_001195dc:
  var_30(this,of->base_ + var_5,in_stack_00000010);
  return;
LAB_001196a4:
  var_3 = 0x108;
  var_32 = (type_6 *)(var_24 + -0x3578);
  var_7 = var_31 + 0x46d4;
  (*(type_9 *)PTR_do_gold_unreachable_004323c4)();
  var_10 = extraout_v1;
LAB_001196c0:
  if (var_10 != 0) goto code_r0x001196c8;
  goto LAB_0011940c;
code_r0x001196c8:
  var_35 = (type_9 *)(var_29 + 0x2f54);
  goto LAB_0011962c;
  while( true ) {
    var_22 = var_28[1];
    var_2 = *(int *)(var_6 + 0x318cd8);
    var_32 = var_32 + 6;
    if (*(type_1 *)(var_5 + 0x28) < var_22) break;
LAB_0011977c:
    uVar15 = *(type_6 *)
              (*(int *)(*(int *)(var_5 + 0x1c) + (var_22 - 1 >> 0xd) * 0xc) +
              (var_22 - 1 & 0x1fff) * 4);
    var_33 = (**(type_9 **)(*var_28 + 8))(var_28);
    var_2 = *var_25;
    if (*(char *)(var_2 + 0x20) != '\0') {
      var_33 = var_33 | 0x8000;
    }
    if (*(char *)(var_2 + 0x21) != '\0') {
      var_33 = var_33 | 0x4000;
    }
    var_34 = var_28[6];
    var_27 = (int *)puVar23[1];
    var_25 = var_25 + 1;
    *var_32 = uVar15;
    var_32[1] = *(type_6 *)(var_2 + 0x10);
    iVar18 = var_28[7];
    *(type_3 *)(var_32 + 5) = var_33;
    var_32[3] = var_34;
    var_32[4] = iVar18;
    var_32[2] = var_34 >> 0x1f;
    *(short *)((int)var_32 + 0x16) = (short)*(type_6 *)(var_2 + 0x14);
    if (var_27 == var_25) {
      return;
    }
    var_28 = (int *)*var_25;
    var_2 = *(int *)(var_6 + 0x318cd8);
    if ((int)(var_32 + 6) - var_3 != var_28[3]) goto LAB_00119850;
  }
LAB_00119868:
  var_35 = *(type_9 **)(var_6 + 0x318ce8);
  var_3 = *(int *)(var_6 + 0x318b30) + 0x46d4;
  (*var_35)(var_3,0x108,var_2 + -0x3578);
  var_32 = (type_6 *)**(int **)(var_3 + 0x30);
  if (var_32 == (type_6 *)(*(int **)(var_3 + 0x30))[1]) {
    return;
  }
  var_2 = *(int *)(var_35 + 0x318b34);
  var_25 = (int *)*var_32;
  var_22 = (**(type_9 **)(*var_25 + 8))(var_25);
  if (var_22 < 6) {
                    /* WARNING: Could not recover jumptable at 0x00119950. Too many branches */
                    /* WARNING: Treating indirect jump as call */
    (*(var_35 + *(int *)(var_2 + -0x49fc + var_22 * 4) + 0x320950))();
    return;
  }
  uVar15 = 0x6f2;
  do {
    var_2 = *(int *)(var_35 + 0x318b34) + -0x377c;
    (**(type_9 **)(var_35 + 0x318b44))(*(int *)(var_35 + 0x318b34) + -0x4fcc,uVar15,var_2);
    (**(type_9 **)(var_35 + 0x318b44))(*(int *)(var_35 + 0x318b34) + -0x5bdc,0xa1,var_2 + -0x36b4);
    (**(type_9 **)(var_35 + 0x318b44))
              (*(int *)(var_35 + 0x31898c) + 0x46d4,0x108,*(int *)(var_35 + 0x318b34) + -0x3578);
    var_2 = *(int *)(var_35 + 0x318b34) + -0x366c;
    (**(type_9 **)(var_35 + 0x318b44))(*(int *)(var_35 + 0x318b34) + -0x5bdc,0xaa,var_2);
    var_2 = var_2 + -0x35d8;
    (**(type_9 **)(var_35 + 0x318b44))(*(int *)(var_35 + 0x318b34) + -0x4fe0,0x1043,var_2);
    (**(type_9 **)(var_35 + 0x318b44))(*(int *)(var_35 + 0x31898c) + 0x44a8,0x5c8,var_2 + -0x35b4);
    uVar15 = 0x618;
  } while( true );
LAB_00119850:
  var_2 = var_2 + -0x3768;
  (**(type_9 **)(var_6 + 0x318ce8))(*(int *)(var_6 + 0x318cd8) + -0x4fcc,0x5d2,var_2);
  goto LAB_00119868;
}


(translation_unit (ERROR (binary_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (false) right: (pointer_expression argument: (identifier))) (ERROR (identifier)) (identifier) (identifier) (ERROR (identifier)) (identifier) (ERROR (identifier)) (identifier) (ERROR (identifier)))))) (compound_statement (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: (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: (primitive_type) 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: (primitive_type) declarator: (pointer_declarator 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: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator 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: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (expression_statement (comma_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (false) right: (pointer_expression argument: (identifier))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (identifier) right: (number_literal))))) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (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: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) 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))))))) 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 declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (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: (identifier) right: (number_literal)))))) right: (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)))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (parenthesized_expression (binary_expression left: (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: (identifier) right: (number_literal)))))) right: (identifier)))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (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: (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: (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)))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (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: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (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: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) 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: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (identifier)))) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) 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: (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)))))))) (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (identifier))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (subscript_expression argument: (identifier) index: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))) right: (number_literal))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))) right: (number_literal))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))) (ERROR (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (expression_statement (comma_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (false) (ERROR) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier)))))) (ERROR (assignment_expression left: (identifier) right: (identifier))) (expression_statement (comma_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (false) (ERROR) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier) (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (number_literal)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_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: (identifier))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier) (binary_expression left: (identifier) right: (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (true))))) (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (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: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))) right: (number_literal))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (identifier) right: (number_literal))))) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (identifier) right: (number_literal))))) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) 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))))))) 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 declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) 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)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) 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: (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))))))) 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: (identifier) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) consequence: (compound_statement (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (subscript_expression argument: (identifier) index: (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))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (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: (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: (identifier) right: (number_literal))))))) (goto_statement label: (statement_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: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal))))) (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: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (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: (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: (break_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))))))))) (labeled_statement label: (statement_identifier) (expression_statement (comma_expression left: (binary_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) (ERROR (identifier)) right: (number_literal)) right: (binary_expression left: (false) (ERROR) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)) (identifier))))))) (return_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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier)) (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: (identifier) right: (number_literal))))))) (goto_statement label: (statement_identifier)) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (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: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (break_statement)) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (number_literal)))))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (number_literal))))))))) (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: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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: (binary_expression left: (identifier) right: (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: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (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: (identifier))) consequence: (compound_statement (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (subscript_expression argument: (identifier) index: (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 declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (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))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (parenthesized_expression (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)))))) index: (number_literal))))) consequence: (compound_statement (return_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))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (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: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (parenthesized_expression (binary_expression left: (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: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (number_literal))))) arguments: (argument_list))))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (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: (number_literal)))) (expression_statement (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: (identifier) right: (number_literal))))))) 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: (number_literal)) (identifier) (identifier)))) (expression_statement (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: (identifier) right: (number_literal))))))) 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: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (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: (identifier) right: (number_literal))))))) 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: (number_literal)) (number_literal) (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))))) (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: (number_literal)))) (expression_statement (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: (identifier) right: (number_literal))))))) 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: (number_literal)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (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: (identifier) right: (number_literal))))))) 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: (number_literal)) (number_literal) (identifier)))) (expression_statement (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: (identifier) right: (number_literal))))))) 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: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) condition: (parenthesized_expression (true))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (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: (identifier) right: (number_literal))))))) 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: (number_literal)) (number_literal) (identifier)))) (goto_statement label: (statement_identifier))))

/* WARNING: Type propagation algorithm not settling */

undefined4 *
MASKED(Output_section_incremental_inputs<64,false> *param_1,int param_2,undefined4 param_3,
            undefined4 param_4,longlong param_5)

{
  int iVar1;
  uint uVar2;
  undefined *puVar3;
  uint *puVar4;
  uint uVar5;
  uchar *puVar6;
  ushort uVar7;
  undefined *puVar8;
  int iVar9;
  uint uVar10;
  uint uVar11;
  uint *puVar12;
  uint extraout_v1;
  undefined *puVar13;
  int *piVar14;
  int iVar15;
  undefined4 uVar16;
  undefined4 *puVar17;
  int iVar18;
  int iVar19;
  undefined *in_t1;
  undefined *puVar20;
  Stringpool_template *pSVar21;
  int *piVar22;
  int *piVar23;
  undefined4 *puVar24;
  uchar *puVar25;
  undefined4 *puVar26;
  Output_section_incremental_inputs<64,false> *unaff_s4;
  int unaff_s6;
  code *pcVar27;
  int *piVar28;
  
  piVar28 = *(int **)(param_1 + 0x30);
  pSVar21 = (Stringpool_template *)piVar28[10];
  if (-1 < *(int *)(param_1 + 0x20) << 2) goto LAB_00119650;
  if (-1 < *(int *)(param_1 + 0x20) << 1) goto LAB_00119634;
  iVar1 = *(int *)(param_1 + 0x10);
  puVar20 = *(undefined **)(param_1 + 0x14);
  if (-1 < *(int *)(param_1 + 0x18)) {
    puVar13 = *(undefined **)(param_2 + 8);
    puVar8 = (undefined *)
             ((uint)(puVar20 + *(int *)(param_1 + 0x1c) < puVar20) + *(int *)(param_1 + 0x18));
    in_t1 = *(undefined **)(param_2 + 0xc);
    if (((int)puVar8 <= (int)puVar13) &&
       ((puVar8 != puVar13 || (puVar20 + *(int *)(param_1 + 0x1c) <= in_t1)))) {
      iVar9 = piVar28[0xe];
      piVar22 = *(int **)(param_2 + 0x10);
      puVar25 = (uchar *)((int)piVar22 + *(int *)(param_1 + 0x1c));
      unaff_s4 = param_1;
      unaff_s6 = param_2;
      if (-1 < *(int *)(iVar9 + 0x20) << 2) goto LAB_00119650;
      iVar19 = *(int *)(iVar9 + 0x18);
      puVar17 = *(undefined4 **)(iVar9 + 0x1c);
      if (-1 < *(int *)(iVar9 + 0x20) << 1) goto LAB_00119634;
      uVar2 = *(uint *)(iVar9 + 0x10);
      puVar8 = *(undefined **)(iVar9 + 0x14);
      if (-1 < iVar19) {
        puVar3 = (undefined *)((uint)(puVar8 + (int)puVar17 < puVar8) + iVar19);
        if ((int)puVar3 <= (int)puVar13) {
          uVar10 = (uint)(in_t1 < puVar8 + (int)puVar17);
          iVar9 = 0;
          if (puVar3 == puVar13) goto LAB_001196c0;
LAB_0011940c:
          uVar10 = *(uint *)(*(int *)(param_1 + 0x34) + 0x10);
          piVar22 = (int *)((int)piVar22 + (int)puVar17);
          if (uVar10 < 0x20000000) {
            puVar13 = (undefined *)(uVar10 << 2);
            puVar4 = (uint *)(*(code *)PTR_operator_new___004322dc)(puVar13);
            (*(code *)PTR_memset_00436850)(puVar4,0,puVar13);
            uVar5 = piVar28[1] - *piVar28 >> 2;
            if (*(uint *)(pSVar21 + 0x28) < (uint)piVar28[9]) goto LAB_001196a4;
            uVar11 = piVar28[9] - 1;
            uVar11 = *(uint *)(*(int *)(*(int *)(pSVar21 + 0x1c) + (uVar11 >> 0xd) * 0xc) +
                              (uVar11 & 0x1fff) * 4);
            *(uint *)(puVar25 + 4) =
                 (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                 ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;
            puVar25[0] = '\x02';
            puVar25[1] = '\0';
            puVar25[2] = '\0';
            puVar25[3] = '\0';
            puVar25[0xc] = '\0';
            puVar25[0xd] = '\0';
            puVar25[0xe] = '\0';
            puVar25[0xf] = '\0';
            *(uint *)(puVar25 + 8) =
                 (((uVar11 >> 0x10) << 0x18 | (uVar11 >> 0x18) << 0x10) >> 0x10) +
                 ((uVar11 & 0xff) << 8 | uVar11 >> 8 & 0xff) * 0x10000;
            puVar6 = (uchar *)gold::Output_section_incremental_inputs<64,false>::write_input_files
                                        (param_1,puVar25,puVar25 + 0x10,pSVar21);
            iVar9 = gold::Output_section_incremental_inputs<64,false>::write_info_blocks
                              (param_1,puVar25,puVar6,pSVar21,puVar4,uVar10);
            if (iVar9 - (int)puVar25 >> 0x1f != iVar1) goto LAB_0011969c;
            if ((undefined *)(iVar9 - (int)puVar25) != puVar20) goto LAB_0011969c;
            uVar16 = 0x59f;
            if ((uVar10 >> 0x1e != uVar2) || (puVar13 != puVar8)) {
              do {
                (*(code *)PTR_do_gold_unreachable_004323c4)
                          (PTR_s_alize_xindex_004323b4 + -0x4fcc,uVar16,
                           PTR_s_alize_xindex_004323b4 + -0x37c8);
LAB_0011969c:
                uVar16 = 0x59c;
              } while( true );
            }
            piVar14 = (int *)((int)piVar22 + (int)puVar8);
            puVar12 = puVar4;
            if (uVar10 != 0) {
              do {
                uVar2 = *puVar12;
                piVar23 = piVar22 + 1;
                *piVar22 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +
                           ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;
                puVar12 = puVar12 + 1;
                piVar22 = piVar23;
              } while (piVar23 != piVar14);
            }
            (*(code *)PTR_operator_delete___004323dc)(puVar4);
            iVar1 = piVar28[0x10];
            if (-1 < *(int *)(iVar1 + 0x20) << 2) goto LAB_00119650;
            if (-1 < *(int *)(iVar1 + 0x20) << 1) goto LAB_00119634;
            if (-1 < *(int *)(iVar1 + 0x18)) {
              in_t1 = *(undefined **)(iVar1 + 0x14) + *(int *)(iVar1 + 0x1c);
              iVar1 = (uint)(in_t1 < *(undefined **)(iVar1 + 0x14)) + *(int *)(iVar1 + 0x18);
              if (iVar1 <= *(int *)(param_2 + 8)) {
                if (*(int *)(param_2 + 8) == iVar1) goto LAB_0011966c;
                goto LAB_001195dc;
              }
            }
            goto LAB_00119628;
          }
          puVar20 = PTR___cxa_throw_bad_array_new_length_004322e8;
          (*(code *)PTR___cxa_throw_bad_array_new_length_004322e8)();
          puVar26 = *(undefined4 **)(puVar13 + 0x30);
          piVar28 = (int *)*puVar26;
          if (piVar28 == (int *)puVar26[1]) {
            return puVar17;
          }
          piVar22 = (int *)*piVar28;
          if ((int)puVar17 - iVar9 != piVar22[3]) {
            iVar1 = *(int *)(puVar20 + 0x318cd8);
            goto LAB_00119850;
          }
          uVar2 = piVar22[1];
          if (uVar2 <= *(uint *)(iVar19 + 0x28)) goto LAB_0011977c;
          iVar1 = *(int *)(puVar20 + 0x318cd8);
          goto LAB_00119868;
        }
      }
    }
  }
LAB_00119628:
  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);
LAB_0011962c:
  while( true ) {
    (*pcVar27)();
LAB_00119634:
    (*(code *)PTR_do_gold_unreachable_004323c4)
              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + -0x36c8);
    unaff_s4 = param_1;
    unaff_s6 = param_2;
LAB_00119650:
    param_2 = unaff_s6;
    param_1 = unaff_s4;
    (*(code *)PTR_do_gold_unreachable_004323c4)
              (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,PTR_s_alize_xindex_004323b4 + -0x36bc);
LAB_0011966c:
    in_t1 = (undefined *)(uint)(*(undefined **)(param_2 + 0xc) < in_t1);
    if (in_t1 == (undefined *)0x0) break;
    pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);
  }
LAB_001195dc:
  puVar17 = (undefined4 *)
            gold::Output_section_incremental_inputs<64,false>::write_got_plt
                      ((uchar *)param_1,param_5);
  return puVar17;
LAB_001196a4:
  iVar9 = 0x108;
  puVar17 = (undefined4 *)(PTR_s_alize_xindex_004323b4 + -0x3578);
  puVar13 = PTR_LAB_0043220c + 0x46d4;
  (*(code *)PTR_do_gold_unreachable_004323c4)();
  uVar10 = extraout_v1;
LAB_001196c0:
  if (uVar10 != 0) goto code_r0x001196c8;
  goto LAB_0011940c;
code_r0x001196c8:
  pcVar27 = (code *)(PTR_LAB_00434040 + 0x2f54);
  goto LAB_0011962c;
  while( true ) {
    uVar2 = piVar22[1];
    iVar1 = *(int *)(puVar20 + 0x318cd8);
    puVar17 = puVar24;
    if (*(uint *)(iVar19 + 0x28) < uVar2) break;
LAB_0011977c:
    uVar16 = *(undefined4 *)
              (*(int *)(*(int *)(iVar19 + 0x1c) + (uVar2 - 1 >> 0xd) * 0xc) +
              (uVar2 - 1 & 0x1fff) * 4);
    uVar7 = (**(code **)(*piVar22 + 8))(piVar22);
    iVar1 = *piVar28;
    if (*(char *)(iVar1 + 0x20) != '\0') {
      uVar7 = uVar7 | 0x8000;
    }
    if (*(char *)(iVar1 + 0x21) != '\0') {
      uVar7 = uVar7 | 0x4000;
    }
    iVar15 = piVar22[6];
    puVar24 = puVar17 + 6;
    piVar14 = (int *)puVar26[1];
    piVar28 = piVar28 + 1;
    *puVar17 = uVar16;
    puVar17[1] = *(undefined4 *)(iVar1 + 0x10);
    iVar18 = piVar22[7];
    *(ushort *)(puVar17 + 5) = uVar7;
    puVar17[3] = iVar15;
    puVar17[4] = iVar18;
    puVar17[2] = iVar15 >> 0x1f;
    *(short *)((int)puVar17 + 0x16) = (short)*(undefined4 *)(iVar1 + 0x14);
    if (piVar14 == piVar28) {
      return puVar24;
    }
    piVar22 = (int *)*piVar28;
    iVar1 = *(int *)(puVar20 + 0x318cd8);
    if ((int)puVar24 - iVar9 != piVar22[3]) goto LAB_00119850;
  }
LAB_00119868:
  pcVar27 = *(code **)(puVar20 + 0x318ce8);
  puVar26 = (undefined4 *)(iVar1 + -0x3578);
  iVar1 = *(int *)(puVar20 + 0x318b30) + 0x46d4;
  (*pcVar27)(iVar1,0x108,puVar26);
  puVar17 = (undefined4 *)**(int **)(iVar1 + 0x30);
  if (puVar17 == (undefined4 *)(*(int **)(iVar1 + 0x30))[1]) {
    return puVar26;
  }
  iVar1 = *(int *)(pcVar27 + 0x318b34);
  piVar28 = (int *)*puVar17;
  uVar2 = (**(code **)(*piVar28 + 8))(piVar28);
  if (uVar2 < 6) {
                    /* WARNING: Could not recover jumptable at 0x00119950. Too many branches */
                    /* WARNING: Treating indirect jump as call */
    puVar17 = (undefined4 *)(*(pcVar27 + *(int *)(iVar1 + -0x49fc + uVar2 * 4) + 0x320950))();
    return puVar17;
  }
  uVar16 = 0x6f2;
  do {
    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x377c;
    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fcc,uVar16,iVar1);
    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xa1,iVar1 + -0x36b4);
    (**(code **)(pcVar27 + 0x318b44))
              (*(int *)(pcVar27 + 0x31898c) + 0x46d4,0x108,*(int *)(pcVar27 + 0x318b34) + -0x3578);
    iVar1 = *(int *)(pcVar27 + 0x318b34) + -0x366c;
    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x5bdc,0xaa,iVar1);
    iVar1 = iVar1 + -0x35d8;
    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x318b34) + -0x4fe0,0x1043,iVar1);
    (**(code **)(pcVar27 + 0x318b44))(*(int *)(pcVar27 + 0x31898c) + 0x44a8,0x5c8,iVar1 + -0x35b4);
    uVar16 = 0x618;
  } while( true );
LAB_00119850:
  iVar1 = iVar1 + -0x3768;
  (**(code **)(puVar20 + 0x318ce8))(*(int *)(puVar20 + 0x318cd8) + -0x4fcc,0x5d2,iVar1);
  goto LAB_00119868;
}

