
/* WARNING: Removing unreachable block (ram,0x00187758) */
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */
/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */
/* DWARF original prototype: uint64_t set_section_list_addresses(Output_segment * this, Layout *
   layout, bool reset, Output_data_list * pdl, uint64_t addr, off_t * poff, off_t * pfoff, uint *
   pshndx, bool * in_tls) */

uint64_t __thiscall
gold::Output_segment::set_section_list_addresses
          (Output_segment *this,Layout *layout,bool reset,Output_data_list *pdl,uint64_t addr,
          off_t *poff,off_t *pfoff,uint *pshndx,bool *in_tls)

{
  byte bVar1;
  bool bVar2;
  longlong lVar3;
  ulonglong uVar4;
  off_t oVar5;
  undefined *puVar6;
  undefined *puVar7;
  Output_data *pOVar8;
  int iVar9;
  int iVar10;
  uint uVar11;
  int iVar12;
  uint uVar13;
  int *piVar14;
  Output_data *pOVar15;
  undefined4 *puVar16;
  undefined4 extraout_v1;
  uint uVar17;
  undefined4 extraout_v1_00;
  uint extraout_v1_01;
  Output_data *pOVar18;
  Output_data *pOVar19;
  Output_segment *this_00;
  Target *this_01;
  uint uVar20;
  undefined1 *puVar21;
  undefined3 in_register_00000018;
  undefined *puVar22;
  _func_int_varargs **pp_Var23;
  uint uVar24;
  Elf_Word EVar25;
  Output_data *pOVar26;
  Output_data *pOVar27;
  uint uVar28;
  int iVar29;
  int iVar30;
  Output_data *pOVar31;
  undefined4 *puVar32;
  Output_data *pOVar33;
  pointer ppOVar34;
  Output_data *pOVar35;
  Output_data *pOVar36;
  undefined *puVar37;
  undefined4 uVar38;
  uint uVar39;
  undefined *puVar40;
  _func_int_varargs *p_Var41;
  Output_data *pOVar42;
  code *pcVar43;
  ulonglong uVar44;
  undefined8 uVar45;
  uint64_t uVar46;
  int iStack_c8;
  int iStack_c4;
  Output_data *pOStack_c0;
  Output_data *pOStack_bc;
  pointer ppOStack_b8;
  Output_data *pOStack_b4;
  Output_data *pOStack_b0;
  undefined *puStack_ac;
  int iStack_a8;
  code *pcStack_a4;
  Output_data *local_90;
  Output_data *local_8c;
  Output_data *local_88;
  Output_data *local_84;
  Output_data *local_78;
  Output_data *local_70;
  Output_data *local_54;
  
  puVar40 = PTR_s_alize_xindex_004323b4;
  pOVar18 = *(Output_data **)((int)poff + 4);
  ppOVar34 = (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>).
             _M_impl._M_start;
  pOVar15 = *(Output_data **)poff;
  pOVar36 = *(Output_data **)pfoff;
  pOVar35 = *(Output_data **)((int)pfoff + 4);
  local_78 = pOVar15;
  local_54 = pOVar18;
  if (ppOVar34 !=
      (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.
      _M_finish) {
    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5ae4;
    puVar7 = PTR_s_alize_xindex_004323b4 + 0x5a48;
    pOVar8 = (Output_data *)(PTR_s_alize_xindex_004323b4 + -0x29ec);
    pOVar42 = pOVar15;
    pOVar31 = pOVar15;
    pOVar33 = pOVar18;
LAB_00187154:
    iVar9 = (*(*ppOVar34)->_vptr_Output_data[7])(*ppOVar34,8);
    iVar10 = (*(*ppOVar34)->_vptr_Output_data[8])();
    if (CONCAT31(in_register_00000018,reset) != 0) {
      pOVar19 = *ppOVar34;
      bVar1 = pOVar19->field_0x20;
      pOVar19->field_0x20 = bVar1 & 0x5f;
      pOVar42 = (Output_data *)-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f);
      if (pOVar42 == (Output_data *)0x0) {
        pOVar19->field_0x20 = bVar1 & 0x1f;
      }
      (*pOVar19->_vptr_Output_data[0xf])();
    }
    piVar14 = (int *)PTR_parameters_00432be0;
    puVar37 = PTR_parameters_00432be0;
    if (-1 < *(int *)&(*ppOVar34)->field_0x20) {
      uVar11 = (*(*ppOVar34)->_vptr_Output_data[3])();
      uVar4 = CONCAT44(uVar11,pOVar42);
      uVar44 = CONCAT44(uVar11,pOVar42);
      if (iVar10 == 0) {
        if (*in_tls == false) goto LAB_00187254;
        uVar44 = maximum_alignment(layout->tls_segment_);
        if (uVar4 < uVar44) {
          *in_tls = false;
        }
        else {
          *in_tls = false;
          uVar44 = uVar4;
        }
        piVar14 = (int *)PTR_parameters_00432be0;
        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);
        if (iVar12 != 0) goto LAB_00187604;
LAB_00187268:
        if (pOVar31 == pOVar36) goto LAB_001878dc;
        goto LAB_00187270;
      }
      uVar44 = uVar4;
      if (*in_tls != false) goto LAB_00187254;
      if (layout->tls_segment_ == (Output_segment *)0x0) {
        uVar38 = 0x11c4;
        goto LAB_00187b08;
      }
      uVar44 = maximum_alignment(layout->tls_segment_);
      uVar13 = (uint)(uVar44 >> 0x20);
      if (uVar11 <= uVar13) {
        local_70 = pOVar42;
        if (uVar11 == uVar13) goto LAB_00187bac;
        goto LAB_0018723c;
      }
LAB_00187bbc:
      uVar38 = 0x11c6;
      goto LAB_00187b08;
    }
    iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);
    if (iVar12 == 0) {
      pOVar42 = *ppOVar34;
      if (*(int *)&pOVar42->field_0x20 < 0) {
        uVar11 = *(uint *)&pOVar42->address_;
        lVar3 = addr + CONCAT44((undefined *)
                                ((int)pOVar31 +
                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -
                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));
        pOVar19 = (Output_data *)lVar3;
        uVar13 = (uint)((ulonglong)lVar3 >> 0x20);
        pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);
        if ((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))) {
          uVar38 = 0x1215;
          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)
          goto LAB_00187b08;
          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);
          pOVar42 = *ppOVar34;
          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;
          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);
          local_70 = *(Output_data **)&pOVar42->address_;
          if (pOVar26 == (Output_data *)0x0) {
            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);
            local_90 = local_70;
            local_8c = pOVar27;
            (*(code *)PTR_gold_error_00432d84)(uVar38);
            pOVar42 = *ppOVar34;
          }
          else {
            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);
            local_90 = local_70;
            local_8c = pOVar27;
            (*(code *)PTR_gold_error_00432d84)
                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);
            pOVar42 = *ppOVar34;
            local_70 = pOVar26;
          }
        }
        else if (iVar9 == 0) {
          if (((int)pOVar36 < (int)pOVar31) ||
             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&
              (pOVar35 != (Output_data *)0x0)))) {
            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);
            (*(code *)PTR_gold_warning_0043245c)(uVar38);
            pOVar42 = *ppOVar34;
            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;
            uVar11 = *(uint *)&pOVar42->address_;
            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);
            local_70 = pOVar19;
          }
          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);
          bVar2 = pOVar33 < pOVar19;
          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);
          pOVar31 = (Output_data *)
                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));
          pOVar35 = pOVar33;
          pOVar36 = pOVar31;
        }
        else {
          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);
          bVar2 = pOVar33 < pOVar19;
          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);
          if (iVar10 != 0) {
            pOVar35 = pOVar33;
          }
          pOVar31 = (Output_data *)
                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));
          if (iVar10 != 0) {
            pOVar36 = pOVar31;
          }
        }
        uVar44 = CONCAT44(uVar13,pOVar42);
        if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;
        bVar1 = pOVar42->field_0x20;
        *(Output_data **)&pOVar42->offset_ = pOVar36;
        *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;
        pOVar42->field_0x20 = bVar1 & 0xdf | 0x20;
        pOVar19 = pOVar35;
        pOVar26 = pOVar36;
        if (-1 < *(int *)&pOVar42->field_0x20 << 1) {
          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);
          iVar12 = *(int *)&pOVar42->field_0x20;
          local_70 = pOVar42;
          goto joined_r0x001878b8;
        }
LAB_0018736c:
        pOVar36 = pOVar26;
        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14);
        pOVar35 = pOVar19;
        if (iVar12 == 0) {
LAB_00187410:
          pOVar42 = *ppOVar34;
        }
        else {
          puVar16 = (undefined4 *)*piVar14;
          pOVar42 = *ppOVar34;
          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {
            uVar38 = *puVar16;
            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;
            oVar5 = pOVar42->data_size_;
            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);
            pOVar42 = pOVar8;
            if (iVar12 != 0) {
              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);
              pOVar42 = *(Output_data **)(iVar12 + 0x24);
            }
            local_90 = pOVar42;
            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);
            goto LAB_00187410;
          }
        }
        if (iVar10 == 0) {
          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {
            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);
            if (iVar9 == 0) {
              pOVar35 = pOVar19;
            }
            pOVar31 = (Output_data *)
                      ((int)&pOVar31->_vptr_Output_data +
                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);
            if (iVar9 == 0) {
              pOVar36 = pOVar31;
            }
            goto LAB_00187458;
          }
        }
        else {
          pOVar19 = pOVar33;
          if (iVar9 != 0) goto LAB_00187458;
          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;
        }
LAB_00187b5c:
        (*(code *)PTR_do_gold_unreachable_004323c4)
                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);
LAB_00187b74:
        (*(code *)PTR_do_gold_unreachable_004323c4)
                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)
        ;
LAB_00187b94:
        do {
          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)
                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,
                              PTR_s_alize_xindex_004323b4 + 30000);
LAB_00187bac:
          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;
LAB_0018723c:
          *in_tls = true;
LAB_00187254:
          piVar14 = (int *)PTR_parameters_00432be0;
          iVar12 = (*(code *)PTR_incremental_update_00432eb0)
                             (*(undefined4 *)PTR_parameters_00432be0);
          if (iVar12 == 0) goto LAB_00187268;
LAB_00187604:
          local_70 = (Output_data *)uVar44;
          pOVar36 = *ppOVar34;
          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {
            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);
            pOVar36 = *ppOVar34;
          }
          pOVar35 = *(Output_data **)&pOVar36->data_size_;
          oVar5 = pOVar36->data_size_;
          local_8c = local_70;
          local_90 = (Output_data *)(uVar44 >> 0x20);
          local_88 = pOVar15;
          local_84 = pOVar18;
          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);
          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);
          pOVar33 = (Output_data *)uVar45;
          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;
          while( true ) {
            pOVar36 = *ppOVar34;
            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;
            bVar1 = pOVar36->field_0x20;
            pOVar36->address_ =
                 addr + CONCAT44((undefined *)
                                 ((int)pOVar31 +
                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -
                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));
            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;
            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;
            *(Output_data **)&pOVar36->offset_ = pOVar31;
            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;
            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;
            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {
              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);
              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;
              pOVar36 = *ppOVar34;
              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;
            }
            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&
               ((pOVar19 = pOVar33, pOVar26 = pOVar31,
                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||
                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),
                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;
            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);
            if (iVar12 == 0) {
              uVar38 = 0x11f6;
              goto LAB_00187b08;
            }
            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;
            while( true ) {
              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);
              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);
              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));
              uVar45 = CONCAT44(uVar38,extraout_v1);
LAB_00187acc:
              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);
              if ((Output_data *)uVar45 != pOVar31) break;
              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);
              if (iVar12 == 0) {
                do {
                  uVar38 = 0x11ee;
LAB_00187b08:
                  (*(code *)PTR_do_gold_unreachable_004323c4)
                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,
                             PTR_s_alize_xindex_004323b4 + 0x7014);
                } while( true );
              }
              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;
            }
          }
        } while( true );
      }
LAB_00187bd4:
      puVar22 = PTR_s_alize_xindex_004323b4 + 0x7850;
      (*(code *)PTR_do_gold_unreachable_004323c4)
                (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,puVar22);
    }
    else {
      pOVar42 = *ppOVar34;
      puVar22 = PTR_s_alize_xindex_004323b4;
      if (*(int *)&pOVar42->field_0x20 << 2 < 0) {
        pOVar31 = *(Output_data **)&pOVar42->offset_;
        pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);
        pOVar19 = pOVar33;
        pOVar26 = pOVar31;
        goto LAB_0018736c;
      }
    }
    uVar11 = 0xe3;
    pcVar43 = set_offset;
    this_00 = (Output_segment *)(PTR_s_alize_xindex_004323b4 + -0x4fe0);
    puVar40 = PTR_do_gold_unreachable_004323c4;
    (*(code *)PTR_do_gold_unreachable_004323c4)(this_00,0xe3,puVar22 + 0x7818);
    pOStack_c0 = pOVar31;
    pOStack_bc = pOVar33;
    ppOStack_b8 = ppOVar34;
    pOStack_b4 = pOVar35;
    pOStack_b0 = pOVar36;
    puStack_ac = puVar37;
    iStack_a8 = iVar9;
    pcStack_a4 = pcVar43;
    if (this_00->type_ == 1) {
      puVar21 = (undefined1 *)0x1255;
      goto LAB_001882ec;
    }
    if (*(int *)&this_00->field_0x1a0 << 1 < 0) goto LAB_001882e8;
    ppOVar34 = this_00->output_lists_[0].
               super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.
               _M_start;
    if (this_00->output_lists_[0].
        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.
        _M_finish != ppOVar34) {
      pOVar35 = (Output_data *)0x0;
      iStack_c4 = 0;
      iStack_c8 = 0;
      goto LAB_00187c80;
    }
    puVar21 = (undefined1 *)0x125f;
    if (uVar11 == 0) {
      uVar11 = (byte)this_00->field_0x1a0 & 0xffffffbf | 0x40;
      *(undefined4 *)((int)&this_00->vaddr_ + 4) = 0;
      *(undefined4 *)&this_00->vaddr_ = 0;
      *(undefined4 *)((int)&this_00->paddr_ + 4) = 0;
      *(undefined4 *)&this_00->paddr_ = 0;
      this_00->field_0x1a0 = (char)uVar11;
      *(undefined4 *)((int)&this_00->memsz_ + 4) = 0;
      *(undefined4 *)&this_00->memsz_ = 0;
      *(undefined4 *)((int)&this_00->min_p_align_ + 4) = 0;
      *(undefined4 *)&this_00->min_p_align_ = 0;
      *(undefined4 *)((int)&this_00->offset_ + 4) = 0;
      *(undefined4 *)&this_00->offset_ = 0;
      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;
      *(undefined4 *)&this_00->filesz_ = 0;
      return CONCAT44(uVar11,1);
    }
    goto LAB_001882ec;
  }
LAB_00187518:
  *(Output_data **)poff = local_78;
  *(Output_data **)((int)poff + 4) = local_54;
  *(Output_data **)pfoff = pOVar36;
  *(Output_data **)((int)pfoff + 4) = pOVar35;
  return addr;
code_r0x00187434:
  pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);
  pOVar31 = (Output_data *)
            ((int)&pOVar31->_vptr_Output_data +
            (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);
  pOVar35 = pOVar19;
  pOVar36 = pOVar31;
LAB_00187458:
  if (((int)local_78 < (int)pOVar31) || ((pOVar31 == local_78 && (local_54 < pOVar19)))) {
    local_78 = pOVar31;
    local_54 = pOVar19;
  }
  iVar9 = (*pOVar42->_vptr_Output_data[6])(pOVar42);
  if (iVar9 != 0) {
    pOVar42 = *ppOVar34;
    if (pOVar42->_vptr_Output_data[0xc] == (_func_int_varargs *)PTR_do_set_out_shndx_00432ea4) {
      uVar11 = (uint)pOVar42[2].data_size_;
      if ((uVar11 != 0xffffffff) && (*pshndx != uVar11)) {
        (*(code *)PTR_do_gold_unreachable_004323c4)
                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000
                  );
        local_78 = pOVar15;
        local_54 = pOVar18;
        goto LAB_00187518;
      }
      *(uint *)((int)&pOVar42[2].data_size_ + 4) = *pshndx;
    }
    else {
      (*pOVar42->_vptr_Output_data[0xc])();
    }
    *pshndx = *pshndx + 1;
  }
  ppOVar34 = ppOVar34 + 1;
  pOVar42 = local_54;
  pOVar33 = pOVar19;
  if ((pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.
      _M_finish == ppOVar34) goto code_r0x001874e4;
  goto LAB_00187154;
code_r0x001874e4:
  addr = addr + CONCAT44((undefined *)
                         ((int)local_78 +
                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -
                         (int)pOVar15)),(Output_data *)((int)local_54 - (int)pOVar18));
  goto LAB_00187518;
LAB_001878c0:
  (*(code *)PTR_do_gold_unreachable_004323c4)
            (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,PTR_s_alize_xindex_004323b4 + 0x751c);
LAB_001878dc:
  local_70 = (Output_data *)uVar44;
  if (pOVar33 == pOVar35) {
    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;
    pOVar42 = pOVar35;
    pOVar19 = pOVar36;
  }
  else {
LAB_00187270:
    local_70 = (Output_data *)uVar44;
    if (iVar9 == 0) {
      uVar38 = 0x11df;
      goto LAB_00187b08;
    }
    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;
    pOVar42 = pOVar35;
    pOVar19 = pOVar36;
  }
  local_70 = (Output_data *)uVar44;
  if (uVar11 != 0) {
    lVar3 = uVar44 + CONCAT44((undefined *)
                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)),
                              &pOVar33[-1].field_0x27);
    pOVar33 = (Output_data *)((uint)lVar3 & -(int)local_70);
    pOVar31 = (Output_data *)
              ((uint)((ulonglong)lVar3 >> 0x20) &
              -(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20));
  }
  pOVar35 = pOVar33;
  pOVar36 = pOVar31;
  if ((iVar10 == 0) && (pOVar35 = pOVar42, pOVar36 = pOVar19, iVar9 == 0)) {
    pOVar35 = pOVar33;
    pOVar36 = pOVar31;
  }
  pOVar42 = *ppOVar34;
  uVar44 = CONCAT44(pOVar42,local_70);
  if (*(int *)&pOVar42->field_0x20 < 0) goto LAB_00187b74;
  bVar1 = pOVar42->field_0x20;
  pOVar42->address_ =
       addr + CONCAT44((undefined *)
                       ((int)pOVar31 +
                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -
                       (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));
  pOVar42->field_0x20 = bVar1 & 0x7f | 0x80;
  if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;
  *(Output_data **)&pOVar42->offset_ = pOVar36;
  *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;
  pOVar42->field_0x20 = bVar1 & 0x5f | 0xa0;
  pOVar19 = pOVar35;
  pOVar26 = pOVar36;
  if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto LAB_0018736c;
  (*pOVar42->_vptr_Output_data[0xe])(pOVar42);
  iVar12 = *(int *)&pOVar42->field_0x20;
joined_r0x001878b8:
  pOVar19 = pOVar35;
  pOVar26 = pOVar36;
  if (iVar12 << 1 < 0) goto LAB_0018736c;
  goto LAB_001878c0;
LAB_00187c80:
  do {
    pOVar36 = *ppOVar34;
    if (pOVar35 == (Output_data *)0x0) {
LAB_00187f58:
      pOVar35 = pOVar36;
    }
    else {
      iVar9 = *(int *)(puVar40 + 0x2aa7ac);
      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;
      uVar13 = *(uint *)&pOVar36->address_;
      uVar24 = (uint)pOVar36->address_;
      if (-1 < *(int *)&pOVar35->field_0x20) goto LAB_001882b0;
      uVar17 = *(uint *)&pOVar35->address_;
      uVar20 = (uint)pOVar35->address_;
      if ((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))) goto LAB_00187f58;
      if ((uVar17 == uVar13) && (uVar20 == uVar24)) {
        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;
        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;
        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||
           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&
            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;
      }
    }
    iVar9 = (*pOVar36->_vptr_Output_data[6])();
    if ((iVar9 == 0) ||
       (iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8)) {
      pOVar36 = *ppOVar34;
      iVar10 = iStack_c4;
      piVar14 = &iStack_c4;
      if (iStack_c4 != 0) goto LAB_00187d18;
LAB_00187f0c:
      *piVar14 = (int)pOVar36;
    }
    else {
      pOVar36 = *ppOVar34;
      iVar10 = iStack_c8;
      piVar14 = &iStack_c8;
      if (iStack_c8 == 0) goto LAB_00187f0c;
LAB_00187d18:
      iVar9 = *(int *)(puVar40 + 0x2aa7ac);
      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;
      uVar13 = *(uint *)&pOVar36->address_;
      uVar24 = (uint)pOVar36->address_;
      if (-1 < *(int *)(iVar10 + 0x20)) goto LAB_001882b0;
      uVar17 = *(uint *)(iVar10 + 8);
      if ((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))
      goto LAB_00187f0c;
      if ((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))) {
        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;
        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;
        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;
        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&
           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {
          *piVar14 = (int)pOVar36;
        }
      }
    }
    ppOVar34 = ppOVar34 + 1;
  } while (this_00->output_lists_[0].
           super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.
           _M_finish != ppOVar34);
  iVar9 = *(int *)(puVar40 + 0x2aa7ac);
  if (-1 < *(int *)&pOVar35->field_0x20) {
LAB_001882b4:
    (**(code **)(puVar40 + 0x2aa7bc))(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xc5,iVar9 + 0x7850);
    goto LAB_001882cc;
  }
  uVar38 = *(undefined4 *)&pOVar35->address_;
  p_Var41 = pOVar35->_vptr_Output_data[4];
  *(int *)((int)&this_00->vaddr_ + 4) = (int)pOVar35->address_;
  *(undefined4 *)&this_00->vaddr_ = uVar38;
  iVar9 = (*p_Var41)(pOVar35);
  if (iVar9 == 0) {
    pp_Var23 = *(_func_int_varargs ***)((int)&this_00->vaddr_ + 4);
    iVar9 = *(int *)&this_00->vaddr_;
LAB_00187da8:
    iVar10 = *(int *)&pOVar35->field_0x20;
    bVar1 = this_00->field_0x1a0;
    *(_func_int_varargs ***)((int)&this_00->paddr_ + 4) = pp_Var23;
    *(int *)&this_00->paddr_ = iVar9;
    this_00->field_0x1a0 = bVar1 & 0xbf | 0x40;
    if (-1 < iVar10 << 2) {
      pcVar43 = *(code **)(puVar40 + 0x2aa7bc);
      (*pcVar43)(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(puVar40 + 0x2aa7ac) + 0x7818);
LAB_00188350:
      this_01 = (Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec);
      (*pcVar43)(this_01,0x69,*(int *)(puVar40 + 0x2aa7ac) + 0x78f8);
LAB_00188368:
      iVar9 = *(int *)(puVar40 + 0x2acab0) + 0x2a90;
      Target::abi_pagesize(this_01);
      if (*(int *)(this_01 + 0x198) == 7) {
        puVar32 = *(undefined4 **)this_01;
        puVar16 = *(undefined4 **)(this_01 + 4);
        uVar38 = 7;
        if (puVar32 != puVar16) {
          do {
            piVar14 = (int *)*puVar32;
            puVar32 = puVar32 + 1;
            (**(code **)(*piVar14 + 0x44))(piVar14);
            puVar16 = *(undefined4 **)(this_01 + 4);
            uVar38 = extraout_v1_00;
          } while (puVar16 != puVar32);
        }
        return CONCAT44(puVar16,uVar38);
      }
      iVar10 = *(int *)(iVar9 + 0x2aa03c) + 0x59f0;
      (**(code **)(iVar9 + 0x2aa04c))(iVar10,0x12bb,*(int *)(iVar9 + 0x2aa03c) + 0x6fd4);
      piVar14 = (int *)(iVar10 + 4);
      uVar11 = extraout_v1_01;
      do {
        puVar16 = (undefined4 *)piVar14[-1];
        if (puVar16 != (undefined4 *)*piVar14) {
          do {
            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);
            uVar11 = (uint)uVar45;
            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {
                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */
                    /* WARNING: Treating indirect jump as call */
              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);
              return uVar46;
            }
            puVar16 = puVar16 + 1;
          } while ((undefined4 *)*piVar14 != puVar16);
        }
        piVar14 = piVar14 + 3;
      } while (piVar14 != (int *)(iVar10 + 0x160));
      return (uint64_t)uVar11;
    }
    uVar38 = *(undefined4 *)&pOVar35->offset_;
    *(int *)((int)&this_00->offset_ + 4) = (int)pOVar35->offset_;
    *(undefined4 *)&this_00->offset_ = uVar38;
    if (iStack_c4 == 0) {
      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;
      *(undefined4 *)&this_00->filesz_ = 0;
LAB_00187e40:
      if (-1 < *(int *)(iStack_c8 + 0x20)) {
LAB_001882b0:
        iVar9 = *(int *)(puVar40 + 0x2aa7ac);
        goto LAB_001882b4;
      }
      iVar9 = *(int *)(iStack_c8 + 8);
      uVar13 = *(uint *)(iStack_c8 + 0xc);
      if (*(int *)(iStack_c8 + 0x20) << 1 < 0) {
        iVar12 = *(int *)&this_00->vaddr_;
        uVar17 = (uint)this_00->vaddr_;
        iVar10 = iStack_c8;
LAB_00187e60:
        uVar24 = uVar11 - uVar17;
        iVar30 = *(int *)(iVar10 + 0x10);
        uVar28 = (uint)this_00->filesz_;
        iVar29 = *(int *)&this_00->filesz_;
        uVar13 = uVar24 + uVar13;
        EVar25 = this_00->type_;
        uVar20 = uVar13 + *(int *)(iVar10 + 0x14);
        uVar39 = uVar28 + uVar11;
        *(uint *)((int)&this_00->memsz_ + 4) = uVar20;
        *(uint *)((int)&this_00->filesz_ + 4) = uVar39;
        iVar9 = (uint)(uVar20 < uVar13) +
                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30;
        *(int *)&this_00->memsz_ = iVar9;
        uVar11 = 0x6474e552;
        *(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29;
        if (EVar25 == 0x6474e552) {
          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);
          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);
          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;
          iVar10 = *(int *)(this_01 + 8);
          uVar20 = uVar17 + uVar20;
          if (iVar10 == 0) goto LAB_00188368;
          iVar29 = *(int *)(iVar10 + 0x5228);
          iVar10 = *(int *)(iVar10 + 0x522c);
          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;
          if (iVar29 == 0 && iVar10 == 0) {
            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);
            iVar29 = *(int *)(iVar9 + 0x20);
            iVar10 = *(int *)(iVar9 + 0x24);
            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();
            uVar11 = (uint)uVar45;
            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {
              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;
              goto LAB_001881ec;
            }
            if (iVar29 == 0 && iVar10 == 0) {
              EVar25 = this_00->type_;
              goto joined_r0x001880f8;
            }
          }
          else {
            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();
            if (iVar9 != 0) {
LAB_00188264:
              uVar11 = uVar20 - 1;
              bVar2 = uVar11 < uVar20;
              uVar20 = uVar11 + iVar10 & -iVar10;
              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &
                       -(uint)(-iVar10 != 0) - iVar29;
LAB_001881ec:
              iVar9 = *(int *)&this_00->vaddr_;
              EVar25 = this_00->type_;
              uVar11 = uVar20 - (int)this_00->vaddr_;
              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;
              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);
              goto joined_r0x001880f8;
            }
          }
          uVar24 = uVar20 - 1;
          uVar11 = -(uint)(-iVar10 != 0) - iVar29;
          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &
              uVar11) != uVar13) goto LAB_00188324;
          puVar21 = &DAT_000012a8;
          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;
          EVar25 = this_00->type_;
        }
joined_r0x001880f8:
        if (EVar25 != 7) {
          return CONCAT44(7,uVar11);
        }
        uVar46 = maximum_alignment(this_00);
        if (uVar46 == 0) {
          uVar13 = *(uint *)&this_00->memsz_;
          uVar11 = (uint)this_00->memsz_;
          *(uint *)&this_00->memsz_ = uVar13;
          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;
        }
        else {
          uVar24 = (uint)this_00->vaddr_;
          uVar11 = -(int)uVar46;
          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),
                                    uVar24 - 1);
          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);
          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))
          goto LAB_00188304;
          puVar21 = (undefined1 *)0x12b1;
          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;
          uVar17 = (uint)this_00->memsz_;
          uVar24 = uVar17 - 1;
          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);
          uVar11 = (uint)lVar3 & uVar11;
          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;
          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;
          *(uint *)&this_00->memsz_ = uVar13;
        }
        return CONCAT44(uVar11,uVar13);
      }
    }
    else {
      iVar9 = *(int *)(puVar40 + 0x2aa7ac);
      if (-1 < *(int *)(iStack_c4 + 0x20)) goto LAB_001882b4;
      iVar9 = *(int *)(iStack_c4 + 8);
      uVar13 = *(uint *)(iStack_c4 + 0xc);
      if (*(int *)(iStack_c4 + 0x20) << 1 < 0) {
        iVar10 = *(int *)(iStack_c4 + 0x10);
        uVar17 = (uint)this_00->vaddr_;
        uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);
        iVar12 = *(int *)&this_00->vaddr_;
        *(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;
        *(uint *)&this_00->filesz_ =
             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -
             (uint)(uVar24 < uVar24 - uVar17);
        iVar10 = iStack_c4;
        if (iStack_c8 != 0) goto LAB_00187e40;
        goto LAB_00187e60;
      }
    }
LAB_001882cc:
    (**(code **)(puVar40 + 0x2aa7bc))
              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xcf,*(int *)(puVar40 + 0x2aa7ac) + 0x7894);
LAB_001882e8:
    puVar21 = (undefined1 *)0x1257;
  }
  else {
    pp_Var23 = pOVar35->_vptr_Output_data;
    if (pp_Var23[5] != *(_func_int_varargs **)(puVar40 + 0x2ac750)) {
      iVar9 = (*pp_Var23[5])(pOVar35);
      goto LAB_00187da8;
    }
    if (*(int *)&pOVar35[3].field_0x20 << 7 < 0) {
      pp_Var23 = *(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4);
      iVar9 = *(int *)&pOVar35[1].data_size_;
      goto LAB_00187da8;
    }
    (**(code **)(puVar40 + 0x2aa7bc))
              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,&DAT_0000107b,
               *(int *)(puVar40 + 0x2aa7ac) + 0x6fe4);
LAB_00188324:
    puVar21 = &DAT_000012a8;
  }
LAB_001882ec:
  do {
    (**(code **)(puVar40 + 0x2aa7bc))
              (*(int *)(puVar40 + 0x2aa7ac) + 0x59f0,puVar21,*(int *)(puVar40 + 0x2aa7ac) + 0x6ff4);
LAB_00188304:
    puVar21 = (undefined1 *)0x12b1;
  } while( true );
}



/* WARNING: Removing unreachable block (ram,0x00187758) */
/* WARNING: Removing unreachable block (ram,0x00187bac) */
/* gold::Output_segment::set_section_list_addresses(gold::Layout*, bool,
   std::vector<gold::Output_data*, std::allocator<gold::Output_data*> >*, unsigned long long, long
   long*, long long*, unsigned int*, bool*) */

ulonglong gold::Output_segment::set_section_list_addresses
                    (Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,
                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)

{
  byte bVar1;
  bool bVar2;
  longlong lVar3;
  undefined *puVar4;
  undefined *puVar5;
  undefined *puVar6;
  undefined *puVar7;
  int iVar8;
  int iVar9;
  int iVar10;
  undefined4 uVar11;
  uint uVar12;
  undefined4 *puVar13;
  undefined4 extraout_v1;
  uint uVar14;
  int *piVar15;
  undefined *puVar16;
  undefined3 in_register_00000014;
  int iVar17;
  uint uVar18;
  uint uVar19;
  undefined4 uVar20;
  uint uVar21;
  uint uVar22;
  int *piVar23;
  uint uVar24;
  uint uVar25;
  uint uVar26;
  uint uVar27;
  undefined4 uVar28;
  int *piVar29;
  int iVar30;
  uint uVar31;
  ulonglong uVar32;
  ulonglong uVar33;
  undefined8 uVar34;
  char *in_stack_00000024;
  uint local_78;
  uint local_54;
  
  puVar4 = PTR_s_alize_xindex_004323b4;
  iVar17 = CONCAT31(in_register_00000014,param_2);
  uVar14 = (uint)*param_6;
  piVar23 = *(int **)param_5;
  uVar12 = *(uint *)param_6;
  uVar27 = *param_7;
  uVar24 = param_7[1];
  local_78 = uVar12;
  local_54 = uVar14;
  if (piVar23 != *(int **)((int)param_5 + 4)) {
    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;
    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;
    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;
    uVar21 = uVar12;
    uVar22 = uVar14;
    do {
      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);
      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();
      if (param_3 != (vector *)0x0) {
        piVar15 = (int *)*piVar23;
        bVar1 = *(byte *)(piVar15 + 8);
        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;
        if (-1 < piVar15[8] << 3) {
          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;
        }
        (**(code **)(*piVar15 + 0x3c))();
      }
      piVar15 = (int *)PTR_parameters_00432be0;
      uVar25 = uVar27;
      if (((int *)*piVar23)[8] < 0) {
        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);
        if (iVar10 == 0) {
          piVar29 = (int *)*piVar23;
          if (-1 < piVar29[8]) {
LAB_00187bd4:
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,
                                PTR_s_alize_xindex_004323b4 + 0x7850);
            return uVar32;
          }
          uVar26 = piVar29[2];
          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),
                                     uVar22 - uVar14);
          uVar18 = (uint)lVar3;
          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);
          uVar19 = piVar29[3];
          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {
            uVar28 = 0x1215;
            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;
            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);
            iVar30 = *piVar23;
            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;
            uVar20 = *(undefined4 *)(iVar30 + 0xc);
            uVar28 = *(undefined4 *)(iVar30 + 8);
            if (iVar10 == 0) {
              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);
              (*(code *)PTR_gold_error_00432d84)(uVar28);
              piVar29 = (int *)*piVar23;
            }
            else {
              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);
              (*(code *)PTR_gold_error_00432d84)
                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);
              piVar29 = (int *)*piVar23;
            }
          }
          else if (iVar8 == 0) {
            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {
              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);
              (*(code *)PTR_gold_warning_0043245c)(uVar28);
              piVar29 = (int *)*piVar23;
              if (-1 < piVar29[8]) goto LAB_00187bd4;
              uVar26 = piVar29[2];
              uVar19 = piVar29[3];
            }
            uVar18 = uVar22 - uVar18;
            bVar2 = uVar22 < uVar18;
            uVar22 = uVar18 + uVar19;
            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;
            uVar24 = uVar22;
            uVar25 = uVar21;
          }
          else {
            uVar18 = uVar22 - uVar18;
            bVar2 = uVar22 < uVar18;
            uVar22 = uVar18 + uVar19;
            if (iVar9 != 0) {
              uVar24 = uVar22;
            }
            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;
            if (iVar9 != 0) {
              uVar25 = uVar21;
            }
          }
          if (piVar29[8] << 2 < 0) goto LAB_00187b94;
          piVar29[6] = uVar25;
          piVar29[7] = uVar24;
          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;
          if (piVar29[8] << 1 < 0) goto LAB_0018736c;
          (**(code **)(*piVar29 + 0x38))(piVar29);
          iVar10 = piVar29[8];
          uVar26 = uVar24;
joined_r0x001878b8:
          uVar24 = uVar26;
          if (-1 < iVar10 << 1) {
LAB_001878c0:
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,
                                PTR_s_alize_xindex_004323b4 + 0x751c);
            return uVar32;
          }
        }
        else {
          iVar10 = *piVar23;
          if (-1 < *(int *)(iVar10 + 0x20) << 2) {
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,
                                PTR_s_alize_xindex_004323b4 + 0x7818);
            return uVar32;
          }
          uVar21 = *(uint *)(iVar10 + 0x18);
          uVar22 = *(uint *)(iVar10 + 0x1c);
          uVar24 = uVar22;
          uVar25 = uVar21;
        }
      }
      else {
        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();
        if (iVar9 == 0) {
          if (*in_stack_00000024 == '\0') goto LAB_00187254;
          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));
          if (uVar32 < uVar33) {
            *in_stack_00000024 = '\0';
            uVar32 = uVar33;
          }
          else {
            *in_stack_00000024 = '\0';
          }
          piVar15 = (int *)PTR_parameters_00432be0;
          iVar10 = (*(code *)PTR_incremental_update_00432eb0)
                             (*(undefined4 *)PTR_parameters_00432be0);
        }
        else {
          if (*in_stack_00000024 == '\0') {
            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {
              uVar28 = 0x11c4;
              goto LAB_00187b08;
            }
            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));
            if (uVar33 < uVar32) {
              uVar28 = 0x11c6;
              goto LAB_00187b08;
            }
            *in_stack_00000024 = '\x01';
            uVar32 = uVar33;
          }
LAB_00187254:
          piVar15 = (int *)PTR_parameters_00432be0;
          iVar10 = (*(code *)PTR_incremental_update_00432eb0)
                             (*(undefined4 *)PTR_parameters_00432be0);
        }
        if (iVar10 == 0) {
          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {
            uVar28 = 0x11df;
LAB_00187b08:
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,
                                PTR_s_alize_xindex_004323b4 + 0x7014);
            return uVar32;
          }
          if (uVar32 != 0) {
            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);
            uVar22 = (uint)lVar3 & -(int)uVar32;
            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &
                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);
          }
          uVar26 = uVar22;
          uVar25 = uVar21;
          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {
            uVar26 = uVar22;
            uVar25 = uVar21;
          }
          piVar29 = (int *)*piVar23;
          if (piVar29[8] < 0) {
LAB_00187b74:
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,
                                PTR_s_alize_xindex_004323b4 + 0x7540);
            return uVar32;
          }
          bVar1 = *(byte *)(piVar29 + 8);
          *(ulonglong *)(piVar29 + 2) =
               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),
                                  uVar22 - uVar14);
          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;
          if (piVar29[8] << 2 < 0) {
LAB_00187b94:
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,
                                PTR_s_alize_xindex_004323b4 + 30000);
            return uVar32;
          }
          piVar29[6] = uVar25;
          piVar29[7] = uVar26;
          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;
          uVar24 = uVar26;
          if (-1 < piVar29[8] << 1) {
            (**(code **)(*piVar29 + 0x38))(piVar29);
            iVar10 = piVar29[8];
            goto joined_r0x001878b8;
          }
        }
        else {
          piVar29 = (int *)*piVar23;
          if (-1 < piVar29[8] << 1) {
            (**(code **)(*piVar29 + 0x34))(piVar29);
            piVar29 = (int *)*piVar23;
          }
          uVar26 = piVar29[4];
          uVar27 = piVar29[5];
          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);
          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);
          uVar22 = (uint)uVar34;
          if (uVar21 == 0xffffffff) goto LAB_00187acc;
          while( true ) {
            piVar29 = (int *)*piVar23;
            if (piVar29[8] < 0) goto LAB_00187b74;
            bVar1 = *(byte *)(piVar29 + 8);
            *(ulonglong *)(piVar29 + 2) =
                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),
                                    uVar22 - uVar14);
            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;
            if (piVar29[8] << 2 < 0) goto LAB_00187b94;
            piVar29[6] = uVar21;
            piVar29[7] = uVar22;
            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;
            if (-1 < piVar29[8] << 1) {
              (**(code **)(*piVar29 + 0x38))(piVar29);
              if (-1 < piVar29[8] << 1) goto LAB_001878c0;
              piVar29 = (int *)*piVar23;
              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;
            }
            if ((piVar29[4] <= (int)uVar26) &&
               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||
                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;
            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);
            if (iVar10 == 0) {
              uVar28 = 0x11f6;
              goto LAB_00187b08;
            }
            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;
            while( true ) {
              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);
              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);
              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));
              uVar34 = CONCAT44(uVar28,extraout_v1);
LAB_00187acc:
              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);
              if ((uint)uVar34 != uVar21) break;
              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);
              if (iVar10 == 0) {
                uVar28 = 0x11ee;
                goto LAB_00187b08;
              }
              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;
            }
          }
        }
      }
LAB_0018736c:
      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);
      if (iVar10 == 0) {
LAB_00187410:
        piVar15 = (int *)*piVar23;
      }
      else {
        puVar13 = (undefined4 *)*piVar15;
        piVar15 = (int *)*piVar23;
        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {
          uVar28 = *puVar13;
          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;
          iVar30 = piVar15[5];
          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);
          puVar16 = puVar7;
          if (iVar10 != 0) {
            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);
            puVar16 = *(undefined **)(iVar10 + 0x24);
          }
          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);
          goto LAB_00187410;
        }
      }
      uVar27 = uVar25;
      if (iVar9 == 0) {
        if (-1 < piVar15[8] << 1) {
LAB_00187b5c:
          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,
                              PTR_s_alize_xindex_004323b4 + 0x7894);
          return uVar32;
        }
        uVar25 = uVar22 + piVar15[5];
        if (iVar8 == 0) {
          uVar24 = uVar25;
        }
        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];
        if (iVar8 == 0) {
          uVar27 = uVar21;
        }
      }
      else {
        uVar25 = uVar22;
        if (iVar8 == 0) {
          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;
          uVar25 = uVar22 + piVar15[5];
          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];
          uVar24 = uVar25;
          uVar27 = uVar21;
        }
      }
      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {
        local_78 = uVar21;
        local_54 = uVar25;
      }
      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);
      if (iVar8 != 0) {
        piVar15 = (int *)*piVar23;
        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {
          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,
                                PTR_s_alize_xindex_004323b4 + 0x7000);
            return uVar32;
          }
          piVar15[0x19] = *(int *)param_8;
        }
        else {
          (**(code **)(*piVar15 + 0x30))();
        }
        *(int *)param_8 = *(int *)param_8 + 1;
      }
      piVar23 = piVar23 + 1;
      uVar22 = uVar25;
    } while (*(int **)((int)param_5 + 4) != piVar23);
    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),
                                 local_54 - uVar14);
  }
  *(uint *)param_6 = local_78;
  *(uint *)((int)param_6 + 4) = local_54;
  *param_7 = uVar27;
  param_7[1] = uVar24;
  return param_4;
}


lui gp,0x2b
addiu gp,gp,0x3148
addu gp,gp,t9
addiu sp,sp,-0xa0
lw v0,0x4(a3)
lw v1,0xb0(sp)
lw a0,0xb8(sp)
lw t0,0xbc(sp)
sw v1,0x44(sp)
lw v1,0xb4(sp)
lw a0,0x4(a0)
sw s2,0x80(sp)
sw v1,0x48(sp)
lw v1,0xb8(sp)
lw s2,0x0(a3)
sw gp,0x20(sp)
sw s4,0x88(sp)
sw s3,0x84(sp)
sw ra,0x9c(sp)
sw s8,0x98(sp)
sw s7,0x94(sp)
sw s6,0x90(sp)
sw s5,0x8c(sp)
sw s1,0x7c(sp)
sw s0,0x78(sp)
sw a0,0x38(sp)
lw v1,0x0(v1)
lw s4,0x0(t0)
lw s3,0x4(t0)
beq s2,v0,0x00187b40
_sw v1,0x2c(sp)
lw v0,-0x7e1c(gp)
or s0,v1,zero
sw a2,0x3c(sp)
or s1,a0,zero
sw a1,0x50(sp)
sw v0,0x6c(sp)
lw v0,-0x7e1c(gp)
sw a3,0x40(sp)
sw v1,0x28(sp)
addiu v0,v0,0x5ae4
sw a0,0x4c(sp)
sw v0,0x68(sp)
lw v0,-0x7e1c(gp)
sw v0,0x54(sp)
lw v0,-0x7e1c(gp)
addiu v0,v0,0x5a48
sw v0,0x70(sp)
lw v0,-0x7e1c(gp)
addiu v0,v0,-0x29ec
sw v0,0x64(sp)
lw v0,0x0(s2)
or a0,v0,zero
lw v0,0x0(v0)
lw t9,0x1c(v0)
jalr t9
_li a1,0x8
li a3,0x400
lw a0,0x0(s2)
or s6,v0,zero
lw v0,0x0(a0)
lw t9,0x20(v0)
jalr t9
_or a2,zero,zero
or s7,v0,zero
lw v0,0x3c(sp)
beq v0,zero,0x001871d0
_lw gp,0x20(sp)
lw a0,0x0(s2)
lbu v0,0x20(a0)
andi v0,v0,0x5f
sb v0,0x20(a0)
lw v1,0x20(a0)
ext v1,v1,0x1c,0x1
bne v1,zero,0x001871bc
_ins v0,zero,0x6,0x1
sb v0,0x20(a0)
lw v0,0x0(a0)
lw t9,0x3c(v0)
jalr t9
_nop
lw gp,0x20(sp)
lw a0,0x0(s2)
lw v0,0x20(a0)
bltz v0,0x00187778
_lw s5,-0x75f0(gp)
lw v0,0x0(a0)
lw t9,0xc(v0)
jalr t9
_nop
or s8,v0,zero
lw v0,0xc4(sp)
lw gp,0x20(sp)
sw v1,0x30(sp)
beq s7,zero,0x001875b8
_lbu v0,0x0(v0)
bne v0,zero,0x00187254
_lw s5,-0x75f0(gp)
lw v0,0x50(sp)
lw a0,0x170(v0)
beq a0,zero,0x00187bc4
_lw t9,-0x70a0(gp)
bal 0x00186db0
_nop
sltu a0,v0,s8
bne a0,zero,0x00187bbc
_lw gp,0x20(sp)
beq s8,v0,0x00187bac
_nop
lw a0,0xc4(sp)
or s8,v0,zero
li v0,0x1
sw v1,0x30(sp)
sb v0,0x0(a0)
lw s5,-0x75f0(gp)
lw t9,-0x7320(gp)
jalr t9
_lw a0,0x0(s5)
bne v0,zero,0x00187604
_lw gp,0x20(sp)
beq s0,s4,0x001878dc
_nop
beq s6,zero,0x00187bcc
_lw v1,0x30(sp)
or v0,s8,v1
beq v0,zero,0x001872b8
_addiu v0,s1,-0x1
addiu s0,s0,-0x1
sltu s1,v0,s1
addu s0,s1,s0
addu a0,v0,v1
subu s1,zero,v1
subu a1,zero,s8
addu v1,s0,s8
sltu s0,a0,v0
sltu v0,zero,s1
addu s0,s0,v1
subu a1,a1,v0
and s1,a0,s1
and s0,s0,a1
bne s7,zero,0x001877b4
_nop
movz s4,s0,s6
movz s3,s1,s6
lw v0,0x38(sp)
lw v1,0x2c(sp)
lw s8,0x0(s2)
subu v0,s1,v0
lw a2,0x44(sp)
subu v1,s0,v1
sltu a0,s1,v0
subu v1,v1,a0
lw a0,0x48(sp)
addu v1,v1,a2
addu a1,v0,a0
lw a0,0x20(s8)
sltu v0,a1,v0
bltz a0,0x00187b74
_addu v0,v0,v1
lbu v1,0x20(s8)
li a0,0x1
sw v0,0x8(s8)
sw a1,0xc(s8)
ins v1,a0,0x7,0x1
sb v1,0x20(s8)
lw v0,0x20(s8)
ext v0,v0,0x1d,0x1
bne v0,zero,0x00187b90
_ins v1,a0,0x5,0x1
sw s4,0x18(s8)
sw s3,0x1c(s8)
sb v1,0x20(s8)
lw v0,0x20(s8)
ext v0,v0,0x1e,0x1
bne v0,zero,0x0018736c
_lw t9,-0x7320(gp)
lw v0,0x0(s8)
lw t9,0x38(v0)
jalr t9
_or a0,s8,zero
lw v0,0x20(s8)
ext v0,v0,0x1e,0x1
beq v0,zero,0x001878c0
_lw gp,0x20(sp)
lw t9,-0x7320(gp)
jalr t9
_lw a0,0x0(s5)
beq v0,zero,0x00187410
_lw gp,0x20(sp)
lw v1,0x0(s5)
lw a0,0x8(v1)
beq a0,zero,0x00187414
_lw v0,0x0(s2)
lw a0,0x14(v1)
andi a0,a0,0x10
beq a0,zero,0x00187414
_nop
lw a0,0x20(v0)
lw s5,0x0(v1)
ext v1,a0,0x1e,0x1
beq v1,zero,0x00187b5c
_lw a2,-0x7e1c(gp)
lw v1,0x0(v0)
or a0,v0,zero
lw t9,0x24(v1)
jalr t9
_lw s8,0x14(v0)
beq v0,zero,0x001879a0
_lw gp,0x20(sp)
lw v0,0x0(s2)
or a0,v0,zero
lw v0,0x0(v0)
lw t9,0x24(v0)
jalr t9
_nop
lw gp,0x20(sp)
lw v0,0x24(v0)
lw v1,0x54(sp)
or a3,s8,zero
lw t9,-0x74f0(gp)
or a2,s1,zero
sw v0,0x10(sp)
or a0,s5,zero
jalr t9
_addiu a1,v1,0x5b24
lw gp,0x20(sp)
lw v0,0x0(s2)
beq s7,zero,0x00187580
_nop
bne s6,zero,0x00187458
_lw a0,0x28(sp)
lw v1,0x20(v0)
ext v1,v1,0x1e,0x1
beq v1,zero,0x00187b5c
_lw a2,-0x7e1c(gp)
lw s3,0x14(v0)
lw s4,0x10(v0)
addu s3,s1,s3
addu s0,s0,s4
sltu s1,s3,s1
addu s4,s1,s0
or s1,s3,zero
or s0,s4,zero
lw a0,0x28(sp)
slt v1,a0,s0
bne v1,zero,0x00187574
_nop
beq s0,a0,0x00187568
_lw v1,0x4c(sp)
lw v1,0x0(v0)
lw t9,0x18(v1)
jalr t9
_or a0,v0,zero
beq v0,zero,0x001874d0
_lw gp,0x20(sp)
lw v1,0xc0(sp)
lw a0,0x0(s2)
lw v0,-0x732c(gp)
lw a1,0x0(v1)
lw v1,0x0(a0)
lw t9,0x30(v1)
bne t9,v0,0x001878ec
_li v1,-0x1
lw v0,0x64(a0)
beq v0,v1,0x001874b8
_nop
bne a1,v0,0x00187b28
_lw a2,-0x7e1c(gp)
sw a1,0x64(a0)
lw v0,0xc0(sp)
lw v1,0xc0(sp)
lw v0,0x0(v0)
addiu v0,v0,0x1
sw v0,0x0(v1)
lw v0,0x40(sp)
addiu s2,s2,0x4
lw v0,0x4(v0)
bne v0,s2,0x00187154
_lw v1,0x4c(sp)
lw v0,0x38(sp)
lw a1,0x2c(sp)
subu a0,v1,v0
lw v0,0x28(sp)
sltu v1,v1,a0
subu v0,v0,a1
lw a1,0x44(sp)
subu v0,v0,v1
lw v1,0x48(sp)
addu v0,v0,a1
addu v1,a0,v1
sltu a0,v1,a0
addu v0,a0,v0
lw a0,0xb8(sp)
lw a1,0x28(sp)
lw ra,0x9c(sp)
lw s8,0x98(sp)
sw a1,0x0(a0)
lw a1,0x4c(sp)
lw s7,0x94(sp)
lw s6,0x90(sp)
lw s5,0x8c(sp)
lw s2,0x80(sp)
lw s1,0x7c(sp)
lw s0,0x78(sp)
sw a1,0x4(a0)
lw a0,0xbc(sp)
sw s4,0x0(a0)
sw s3,0x4(a0)
lw s4,0x88(sp)
lw s3,0x84(sp)
jr ra
_addiu sp,sp,0xa0
sltu v1,v1,s1
beq v1,zero,0x0018746c
_nop
sw s0,0x28(sp)
b 0x0018746c
_sw s1,0x4c(sp)
lw v1,0x20(v0)
ext v1,v1,0x1e,0x1
beq v1,zero,0x00187b5c
_lw a2,-0x7e1c(gp)
lw v1,0x14(v0)
lw a0,0x10(v0)
addu v1,s1,v1
addu s0,s0,a0
sltu s1,v1,s1
movz s3,v1,s6
addu s0,s1,s0
or s1,v1,zero
b 0x00187454
_movz s4,s0,s6
beq v0,zero,0x00187254
_lw s5,-0x75f0(gp)
lw v0,0x50(sp)
lw t9,-0x70a0(gp)
bal 0x00186db0
_lw a0,0x170(v0)
sltu a0,s8,v0
bne a0,zero,0x00187764
_lw gp,0x20(sp)
beq v0,s8,0x00187758
_lw a0,0x30(sp)
lw v0,0xc4(sp)
sb zero,0x0(v0)
lw s5,-0x75f0(gp)
lw t9,-0x7320(gp)
jalr t9
_lw a0,0x0(s5)
beq v0,zero,0x00187268
_lw gp,0x20(sp)
lw v0,0x0(s2)
lw v1,0x20(v0)
ext v1,v1,0x1e,0x1
bne v1,zero,0x00187630
_nop
lw v1,0x0(v0)
lw t9,0x34(v1)
jalr t9
_or a0,v0,zero
lw gp,0x20(sp)
lw v0,0x0(s2)
lw s3,0x10(v0)
lw a3,0x14(v0)
lw v0,0x2c(sp)
lw v1,0x50(sp)
or a2,s3,zero
lw t9,-0x731c(gp)
sw v0,0x18(sp)
lw v0,0x38(sp)
addiu a0,v1,0x258
sw a3,0x58(sp)
sw s8,0x10(sp)
sw v0,0x1c(sp)
lw v0,0x30(sp)
jalr t9
_sw v0,0x14(sp)
li a0,-0x1
or s0,v0,zero
lw gp,0x20(sp)
beq s0,a0,0x00187acc
_or s1,v1,zero
lw v0,0x38(sp)
lw v1,0x2c(sp)
lw s4,0x0(s2)
subu v0,s1,v0
lw a2,0x44(sp)
subu v1,s0,v1
sltu a0,s1,v0
subu v1,v1,a0
lw a0,0x48(sp)
addu v1,v1,a2
addu a1,v0,a0
lw a0,0x20(s4)
sltu v0,a1,v0
bltz a0,0x00187b74
_addu v0,v0,v1
lbu v1,0x20(s4)
li a0,0x1
sw v0,0x8(s4)
sw a1,0xc(s4)
ins v1,a0,0x7,0x1
sb v1,0x20(s4)
lw v0,0x20(s4)
ext v0,v0,0x1d,0x1
bne v0,zero,0x00187b90
_ins v1,a0,0x5,0x1
sw s0,0x18(s4)
sw s1,0x1c(s4)
sb v1,0x20(s4)
lw v0,0x20(s4)
ext v0,v0,0x1e,0x1
bne v0,zero,0x00187734
_nop
lw v0,0x0(s4)
lw t9,0x38(v0)
jalr t9
_or a0,s4,zero
lw v0,0x20(s4)
ext v0,v0,0x1e,0x1
beq v0,zero,0x001878c0
_lw gp,0x20(sp)
lw s4,0x0(s2)
lw v0,0x20(s4)
ext v0,v0,0x1e,0x1
beq v0,zero,0x00187b5c
_lw a2,-0x7e1c(gp)
lw v0,0x10(s4)
slt v1,s3,v0
bne v1,zero,0x00187a74
_nop
beq v0,s3,0x00187a64
_lw v1,0x58(sp)
or s4,s0,zero
b 0x00187368
_or s3,s1,zero
sltu a0,a0,v1
beq a0,zero,0x001875e4
_nop
or s8,v0,zero
lw v0,0xc4(sp)
sw v1,0x30(sp)
b 0x001875ec
_sb zero,0x0(v0)
lw t9,-0x7320(gp)
jalr t9
_lw a0,0x0(s5)
beq v0,zero,0x001877c0
_lw gp,0x20(sp)
lw v0,0x0(s2)
lw v1,0x20(v0)
ext v1,v1,0x1d,0x1
beq v1,zero,0x00187bf0
_lw a2,-0x7e1c(gp)
lw s0,0x18(v0)
lw s1,0x1c(v0)
or s4,s0,zero
b 0x00187368
_or s3,s1,zero
or s4,s0,zero
b 0x001872c8
_or s3,s1,zero
lw v1,0x0(s2)
lw v0,0x20(v1)
bgez v0,0x00187bd4
_lw v0,0x38(sp)
lw a0,0x2c(sp)
lw a1,0x8(v1)
subu v0,s1,v0
subu a2,s0,a0
sltu a0,s1,v0
subu a2,a2,a0
lw a0,0x48(sp)
addu a3,v0,a0
lw a0,0x44(sp)
sltu v0,a3,v0
addu a2,a2,a0
addu s8,v0,a2
sltu a0,a1,s8
bne a0,zero,0x001878fc
_lw t0,0xc(v1)
bne s8,a1,0x0018781c
_sltu v0,t0,a3
bne v0,zero,0x00187900
_lw v0,0x50(sp)
bne s6,zero,0x001879a8
_subu v0,s0,s8
slt v0,s4,s0
bne v0,zero,0x00187a28
_lw t9,-0x39b8(gp)
beq s0,s4,0x00187a20
_sltu s3,s3,s1
subu a3,s1,a3
subu v0,s0,s8
sltu s1,s1,a3
subu v0,v0,s1
addu s1,a3,t0
addu v0,v0,a1
sltu a3,s1,a3
addu s0,a3,v0
or s3,s1,zero
or s4,s0,zero
lw v0,0x20(v1)
ext v0,v0,0x1d,0x1
bne v0,zero,0x00187b94
_lw a2,-0x7e1c(gp)
lbu v0,0x20(v1)
li a0,0x1
sw s4,0x18(v1)
sw s3,0x1c(v1)
ins v0,a0,0x5,0x1
sb v0,0x20(v1)
lw v0,0x20(v1)
ext v0,v0,0x1e,0x1
bne v0,zero,0x0018736c
_lw t9,-0x7320(gp)
lw v0,0x0(v1)
sw v1,0x30(sp)
lw t9,0x38(v0)
jalr t9
_or a0,v1,zero
lw v1,0x30(sp)
lw v0,0x20(v1)
ext v0,v0,0x1e,0x1
bne v0,zero,0x00187368
_lw gp,0x20(sp)
lw a2,-0x7e1c(gp)
li a1,0x163
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,0x751c
jalr t9
_addiu a0,a0,-0x4fe0
bne s1,s3,0x00187270
_lw v1,0x30(sp)
b 0x0018727c
_or v0,s8,v1
jalr t9
_nop
b 0x001874c0
_lw v0,0xc0(sp)
lw v0,0x50(sp)
lw v0,0x4(v0)
lbu v0,0xac(v0)
beq v0,zero,0x00187b08
_li a1,0x1215
lw v0,0x0(v1)
sw a3,0x30(sp)
lw t9,0x24(v0)
jalr t9
_or a0,v1,zero
lw v1,0x0(s2)
or a1,v0,zero
lw v0,0x20(v1)
bgez v0,0x00187bd4
_lw gp,0x20(sp)
lw t1,0xc(v1)
lw t0,0x8(v1)
beq a1,zero,0x001879d0
_lw a3,0x30(sp)
lw t9,-0x39b8(gp)
lw a0,0x68(sp)
sw a3,0x60(sp)
sw t1,0x5c(sp)
sw t0,0x58(sp)
jalr t9
_sw a1,0x30(sp)
or a2,s8,zero
lw gp,0x20(sp)
or a0,v0,zero
lw a1,0x30(sp)
lw t1,0x5c(sp)
lw t0,0x58(sp)
lw t9,-0x744c(gp)
lw a1,0x24(a1)
lw a3,0x60(sp)
sw t1,0x14(sp)
jalr t9
_sw t0,0x10(sp)
lw gp,0x20(sp)
b 0x00187860
_lw v1,0x0(s2)
b 0x001873ec
_lw v0,0x64(sp)
subu a3,s1,a3
sltu s1,s1,a3
subu v0,v0,s1
addu s1,a3,t0
addu v0,v0,a1
sltu a3,s1,a3
movn s3,s1,s7
addu s0,a3,v0
b 0x00187860
_movn s4,s0,s7
lw v0,0x6c(sp)
lw t9,-0x39b8(gp)
sw a3,0x58(sp)
addiu a0,v0,0x5aa8
sw t1,0x34(sp)
jalr t9
_sw t0,0x30(sp)
or a2,s8,zero
lw gp,0x20(sp)
or a0,v0,zero
lw t1,0x34(sp)
lw t0,0x30(sp)
lw a3,0x58(sp)
lw t9,-0x744c(gp)
sw t1,0x14(sp)
jalr t9
_sw t0,0x10(sp)
lw gp,0x20(sp)
b 0x00187860
_lw v1,0x0(s2)
beq s3,zero,0x00187838
_lw t9,-0x39b8(gp)
lw a0,0x70(sp)
jalr t9
_sw a3,0x30(sp)
lw gp,0x20(sp)
lw t9,-0x7d74(gp)
jalr t9
_or a0,v0,zero
lw v1,0x0(s2)
lw v0,0x20(v1)
bgez v0,0x00187bd4
_lw gp,0x20(sp)
lw a1,0x8(v1)
lw t0,0xc(v1)
b 0x00187838
_lw a3,0x30(sp)
lw v0,0x14(s4)
sltu s3,v1,v0
beq s3,zero,0x0018774c
_nop
lw v0,0x0(s4)
lw t9,0x24(v0)
jalr t9
_or a0,s4,zero
beq v0,zero,0x00187b04
_lw gp,0x20(sp)
lw a0,-0x7e1c(gp)
lw t9,-0x39b8(gp)
addiu a0,a0,-0x299c
jalr t9
_nop
lw v1,0x0(s2)
or s0,v0,zero
lw v0,0x0(v1)
lw t9,0x24(v0)
jalr t9
_or a0,v1,zero
or a0,s0,zero
lw gp,0x20(sp)
lw t9,-0x7314(gp)
jalr t9
_lw a1,0x24(v0)
bne v1,s0,0x00187684
_lw v0,0x38(sp)
lw v0,0x0(s2)
or a0,v0,zero
lw v0,0x0(v0)
lw t9,0x24(v0)
jalr t9
_nop
beq v0,zero,0x00187b20
_lw gp,0x20(sp)
lw a0,-0x7e1c(gp)
lw t9,-0x39b8(gp)
b 0x00187a98
_addiu a0,a0,-0x29e0
li a1,0x11f6
lw a2,-0x7e1c(gp)
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,0x7014
jalr t9
_addiu a0,a0,0x59f0
b 0x00187b08
_li a1,0x11ee
li a1,0x104b
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,0x7000
jalr t9
_addiu a0,a0,-0x4fe0
lw a0,0x2c(sp)
lw v0,0x44(sp)
lw v1,0x48(sp)
sw a0,0x28(sp)
lw a0,0x38(sp)
b 0x00187518
_sw a0,0x4c(sp)
li a1,0xcf
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,0x7894
jalr t9
_addiu a0,a0,-0x4fe0
lw a2,-0x7e1c(gp)
li a1,0x142
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,0x7540
jalr t9
_addiu a0,a0,-0x4fe0
lw a2,-0x7e1c(gp)
li a1,0x14b
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,0x7530
jalr t9
_addiu a0,a0,-0x4fe0
lw a0,0x30(sp)
sltu s8,v1,a0
beq s8,zero,0x0018723c
_nop
b 0x00187b08
_li a1,0x11c6
b 0x00187b08
_li a1,0x11c4
b 0x00187b08
_li a1,0x11df
lw a2,-0x7e1c(gp)
li a1,0xc5
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,0x7850
jalr t9
_addiu a0,a0,-0x4fe0
li a1,0xe3
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,0x7818
jalr t9
_addiu a0,a0,-0x4fe0
(translation_unit "/* WARNING: Removing unreachable block (ram,0x00187758) */\n/* WARNING: Removing unreachable block (ram,0x00187bac) */\n/* gold::Output_segment::set_section_list_addresses(gold::Layout*, bool,\n   std::vector<gold::Output_data*, std::allocator<gold::Output_data*> >*, unsigned long long, long\n   long*, long long*, unsigned int*, bool*) */\n\nulonglong gold::Output_segment::set_section_list_addresses\n                    (Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,\n                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)\n\n{\n  byte bVar1;\n  bool bVar2;\n  longlong lVar3;\n  undefined *puVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined4 uVar11;\n  uint uVar12;\n  undefined4 *puVar13;\n  undefined4 extraout_v1;\n  uint uVar14;\n  int *piVar15;\n  undefined *puVar16;\n  undefined3 in_register_00000014;\n  int iVar17;\n  uint uVar18;\n  uint uVar19;\n  undefined4 uVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  uint uVar24;\n  uint uVar25;\n  uint uVar26;\n  uint uVar27;\n  undefined4 uVar28;\n  int *piVar29;\n  int iVar30;\n  uint uVar31;\n  ulonglong uVar32;\n  ulonglong uVar33;\n  undefined8 uVar34;\n  char *in_stack_00000024;\n  uint local_78;\n  uint local_54;\n  \n  puVar4 = PTR_s_alize_xindex_004323b4;\n  iVar17 = CONCAT31(in_register_00000014,param_2);\n  uVar14 = (uint)*param_6;\n  piVar23 = *(int **)param_5;\n  uVar12 = *(uint *)param_6;\n  uVar27 = *param_7;\n  uVar24 = param_7[1];\n  local_78 = uVar12;\n  local_54 = uVar14;\n  if (piVar23 != *(int **)((int)param_5 + 4)) {\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }\n  *(uint *)param_6 = local_78;\n  *(uint *)((int)param_6 + 4) = local_54;\n  *param_7 = uVar27;\n  param_7[1] = uVar24;\n  return param_4;\n}\n\n" comment comment comment (function_definition "ulonglong gold::Output_segment::set_section_list_addresses\n                    (Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,\n                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)\n\n{\n  byte bVar1;\n  bool bVar2;\n  longlong lVar3;\n  undefined *puVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined4 uVar11;\n  uint uVar12;\n  undefined4 *puVar13;\n  undefined4 extraout_v1;\n  uint uVar14;\n  int *piVar15;\n  undefined *puVar16;\n  undefined3 in_register_00000014;\n  int iVar17;\n  uint uVar18;\n  uint uVar19;\n  undefined4 uVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  uint uVar24;\n  uint uVar25;\n  uint uVar26;\n  uint uVar27;\n  undefined4 uVar28;\n  int *piVar29;\n  int iVar30;\n  uint uVar31;\n  ulonglong uVar32;\n  ulonglong uVar33;\n  undefined8 uVar34;\n  char *in_stack_00000024;\n  uint local_78;\n  uint local_54;\n  \n  puVar4 = PTR_s_alize_xindex_004323b4;\n  iVar17 = CONCAT31(in_register_00000014,param_2);\n  uVar14 = (uint)*param_6;\n  piVar23 = *(int **)param_5;\n  uVar12 = *(uint *)param_6;\n  uVar27 = *param_7;\n  uVar24 = param_7[1];\n  local_78 = uVar12;\n  local_54 = uVar14;\n  if (piVar23 != *(int **)((int)param_5 + 4)) {\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }\n  *(uint *)param_6 = local_78;\n  *(uint *)((int)param_6 + 4) = local_54;\n  *param_7 = uVar27;\n  param_7[1] = uVar24;\n  return param_4;\n}" type_identifier (ERROR "gold::Output_segment::" identifier : : identifier : :) (function_declarator "set_section_list_addresses\n                    (Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,\n                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)" identifier (parameter_list "(Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,\n                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)" ( (parameter_declaration "Layout *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "bool param_2" primitive_type identifier) , (parameter_declaration "vector *param_3" type_identifier (pointer_declarator "*param_3" * identifier)) , (parameter_declaration "ulonglong param_4" type_identifier identifier) , (parameter_declaration "longlong *param_5" type_identifier (pointer_declarator "*param_5" * identifier)) , (parameter_declaration "longlong *param_6" type_identifier (pointer_declarator "*param_6" * identifier)) , (parameter_declaration "uint *param_7" type_identifier (pointer_declarator "*param_7" * identifier)) , (parameter_declaration "bool *param_8" primitive_type (pointer_declarator "*param_8" * identifier)) ))) (compound_statement "{\n  byte bVar1;\n  bool bVar2;\n  longlong lVar3;\n  undefined *puVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined4 uVar11;\n  uint uVar12;\n  undefined4 *puVar13;\n  undefined4 extraout_v1;\n  uint uVar14;\n  int *piVar15;\n  undefined *puVar16;\n  undefined3 in_register_00000014;\n  int iVar17;\n  uint uVar18;\n  uint uVar19;\n  undefined4 uVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  uint uVar24;\n  uint uVar25;\n  uint uVar26;\n  uint uVar27;\n  undefined4 uVar28;\n  int *piVar29;\n  int iVar30;\n  uint uVar31;\n  ulonglong uVar32;\n  ulonglong uVar33;\n  undefined8 uVar34;\n  char *in_stack_00000024;\n  uint local_78;\n  uint local_54;\n  \n  puVar4 = PTR_s_alize_xindex_004323b4;\n  iVar17 = CONCAT31(in_register_00000014,param_2);\n  uVar14 = (uint)*param_6;\n  piVar23 = *(int **)param_5;\n  uVar12 = *(uint *)param_6;\n  uVar27 = *param_7;\n  uVar24 = param_7[1];\n  local_78 = uVar12;\n  local_54 = uVar14;\n  if (piVar23 != *(int **)((int)param_5 + 4)) {\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }\n  *(uint *)param_6 = local_78;\n  *(uint *)((int)param_6 + 4) = local_54;\n  *param_7 = uVar27;\n  param_7[1] = uVar24;\n  return param_4;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "bool bVar2;" primitive_type identifier ;) (declaration "longlong lVar3;" type_identifier identifier ;) (declaration "undefined *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "undefined *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "undefined4 *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "undefined4 extraout_v1;" type_identifier identifier ;) (declaration "uint uVar14;" type_identifier identifier ;) (declaration "int *piVar15;" primitive_type (pointer_declarator "*piVar15" * identifier) ;) (declaration "undefined *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "undefined3 in_register_00000014;" type_identifier identifier ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "undefined4 uVar20;" type_identifier identifier ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "int *piVar23;" primitive_type (pointer_declarator "*piVar23" * identifier) ;) (declaration "uint uVar24;" type_identifier identifier ;) (declaration "uint uVar25;" type_identifier identifier ;) (declaration "uint uVar26;" type_identifier identifier ;) (declaration "uint uVar27;" type_identifier identifier ;) (declaration "undefined4 uVar28;" type_identifier identifier ;) (declaration "int *piVar29;" primitive_type (pointer_declarator "*piVar29" * identifier) ;) (declaration "int iVar30;" primitive_type identifier ;) (declaration "uint uVar31;" type_identifier identifier ;) (declaration "ulonglong uVar32;" type_identifier identifier ;) (declaration "ulonglong uVar33;" type_identifier identifier ;) (declaration "undefined8 uVar34;" type_identifier identifier ;) (declaration "char *in_stack_00000024;" primitive_type (pointer_declarator "*in_stack_00000024" * identifier) ;) (declaration "uint local_78;" type_identifier identifier ;) (declaration "uint local_54;" type_identifier identifier ;) (expression_statement "puVar4 = PTR_s_alize_xindex_004323b4;" (assignment_expression "puVar4 = PTR_s_alize_xindex_004323b4" identifier = identifier) ;) (expression_statement "iVar17 = CONCAT31(in_register_00000014,param_2);" (assignment_expression "iVar17 = CONCAT31(in_register_00000014,param_2)" identifier = (call_expression "CONCAT31(in_register_00000014,param_2)" identifier (argument_list "(in_register_00000014,param_2)" ( identifier , identifier )))) ;) (expression_statement "uVar14 = (uint)*param_6;" (assignment_expression "uVar14 = (uint)*param_6" identifier = (binary_expression "(uint)*param_6" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "piVar23 = *(int **)param_5;" (assignment_expression "piVar23 = *(int **)param_5" identifier = (pointer_expression "*(int **)param_5" * (cast_expression "(int **)param_5" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "uVar12 = *(uint *)param_6;" (assignment_expression "uVar12 = *(uint *)param_6" identifier = (pointer_expression "*(uint *)param_6" * (cast_expression "(uint *)param_6" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar27 = *param_7;" (assignment_expression "uVar27 = *param_7" identifier = (pointer_expression "*param_7" * identifier)) ;) (expression_statement "uVar24 = param_7[1];" (assignment_expression "uVar24 = param_7[1]" identifier = (subscript_expression "param_7[1]" identifier [ number_literal ])) ;) (expression_statement "local_78 = uVar12;" (assignment_expression "local_78 = uVar12" identifier = identifier) ;) (expression_statement "local_54 = uVar14;" (assignment_expression "local_54 = uVar14" identifier = identifier) ;) (if_statement "if (piVar23 != *(int **)((int)param_5 + 4)) {\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }" if (parenthesized_expression "(piVar23 != *(int **)((int)param_5 + 4))" ( (binary_expression "piVar23 != *(int **)((int)param_5 + 4)" identifier != (pointer_expression "*(int **)((int)param_5 + 4)" * (cast_expression "(int **)((int)param_5 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)param_5 + 4)" ( (binary_expression "(int)param_5 + 4" (cast_expression "(int)param_5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (compound_statement "{\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }" { (expression_statement "puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;" (assignment_expression "puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + 0x5ae4" identifier + number_literal)) ;) (expression_statement "puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;" (assignment_expression "puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + 0x5a48" identifier + number_literal)) ;) (expression_statement "puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;" (assignment_expression "puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + -0x29ec" identifier + number_literal)) ;) (expression_statement "uVar21 = uVar12;" (assignment_expression "uVar21 = uVar12" identifier = identifier) ;) (expression_statement "uVar22 = uVar14;" (assignment_expression "uVar22 = uVar14" identifier = identifier) ;) (do_statement "do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);" do (compound_statement "{\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    }" { (expression_statement "iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);" (assignment_expression "iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8)" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x1c))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0x1c)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0x1c)" * (cast_expression "(code **)(*(int *)*piVar23 + 0x1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0x1c)" ( (binary_expression "*(int *)*piVar23 + 0x1c" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "((int *)*piVar23,8)" ( (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier)) , number_literal )))) ;) (expression_statement "iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();" (assignment_expression "iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))()" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0x20))()" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x20))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0x20)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0x20)" * (cast_expression "(code **)(*(int *)*piVar23 + 0x20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0x20)" ( (binary_expression "*(int *)*piVar23 + 0x20" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }" if (parenthesized_expression "(param_3 != (vector *)0x0)" ( (binary_expression "param_3 != (vector *)0x0" identifier != (cast_expression "(vector *)0x0" ( (type_descriptor "vector *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }" { (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (expression_statement "bVar1 = *(byte *)(piVar15 + 8);" (assignment_expression "bVar1 = *(byte *)(piVar15 + 8)" identifier = (pointer_expression "*(byte *)(piVar15 + 8)" * (cast_expression "(byte *)(piVar15 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar15 + 8)" ( (binary_expression "piVar15 + 8" identifier + number_literal) ))))) ;) (expression_statement "*(byte *)(piVar15 + 8) = bVar1 & 0x5f;" (assignment_expression "*(byte *)(piVar15 + 8) = bVar1 & 0x5f" (pointer_expression "*(byte *)(piVar15 + 8)" * (cast_expression "(byte *)(piVar15 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar15 + 8)" ( (binary_expression "piVar15 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x5f" identifier & number_literal)) ;) (if_statement "if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }" if (parenthesized_expression "(-1 < piVar15[8] << 3)" ( (binary_expression "-1 < piVar15[8] << 3" number_literal < (binary_expression "piVar15[8] << 3" (subscript_expression "piVar15[8]" identifier [ number_literal ]) << number_literal)) )) (compound_statement "{\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }" { (expression_statement "*(byte *)(piVar15 + 8) = bVar1 & 0x1f;" (assignment_expression "*(byte *)(piVar15 + 8) = bVar1 & 0x1f" (pointer_expression "*(byte *)(piVar15 + 8)" * (cast_expression "(byte *)(piVar15 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar15 + 8)" ( (binary_expression "piVar15 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x1f" identifier & number_literal)) ;) })) (expression_statement "(**(code **)(*piVar15 + 0x3c))();" (call_expression "(**(code **)(*piVar15 + 0x3c))()" (parenthesized_expression "(**(code **)(*piVar15 + 0x3c))" ( (pointer_expression "**(code **)(*piVar15 + 0x3c)" * (pointer_expression "*(code **)(*piVar15 + 0x3c)" * (cast_expression "(code **)(*piVar15 + 0x3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar15 + 0x3c)" ( (binary_expression "*piVar15 + 0x3c" (pointer_expression "*piVar15" * identifier) + number_literal) ))))) )) (argument_list "()" ( ))) ;) })) (expression_statement "piVar15 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar15 = (int *)PTR_parameters_00432be0" identifier = (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar25 = uVar27;" (assignment_expression "uVar25 = uVar27" identifier = identifier) ;) (if_statement "if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }" if (parenthesized_expression "(((int *)*piVar23)[8] < 0)" ( (binary_expression "((int *)*piVar23)[8] < 0" (subscript_expression "((int *)*piVar23)[8]" (parenthesized_expression "((int *)*piVar23)" ( (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier)) )) [ number_literal ]) < number_literal) )) (compound_statement "{\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }" { (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" ( (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" * (cast_expression "(undefined4 *)PTR_parameters_00432be0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )))) ;) (if_statement "if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }" { (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }" if (parenthesized_expression "(-1 < piVar29[8])" ( (binary_expression "-1 < piVar29[8]" number_literal < (subscript_expression "piVar29[8]" identifier [ number_literal ])) )) (compound_statement "{\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }" { (labeled_statement "LAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850)" (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,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7850" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "uVar26 = piVar29[2];" (assignment_expression "uVar26 = piVar29[2]" identifier = (subscript_expression "piVar29[2]" identifier [ number_literal ])) ;) (expression_statement "lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);" (assignment_expression "lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" identifier = (binary_expression "param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" identifier + (call_expression "CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" identifier (argument_list "((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" ( (binary_expression "(uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uVar21 - uVar12)" ( (binary_expression "uVar21 - uVar12" identifier - identifier) )) - (call_expression "(uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 < uVar22 - uVar14)" ( (binary_expression "uVar22 < uVar22 - uVar14" identifier < (binary_expression "uVar22 - uVar14" identifier - identifier)) )))) , (binary_expression "uVar22 - uVar14" identifier - identifier) ))))) ;) (expression_statement "uVar18 = (uint)lVar3;" (assignment_expression "uVar18 = (uint)lVar3" identifier = (cast_expression "(uint)lVar3" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar31 = (uint)((ulonglong)lVar3 >> 0x20);" (assignment_expression "uVar31 = (uint)((ulonglong)lVar3 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar3 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar3 >> 0x20)" ( (binary_expression "(ulonglong)lVar3 >> 0x20" (cast_expression "(ulonglong)lVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "uVar19 = piVar29[3];" (assignment_expression "uVar19 = piVar29[3]" identifier = (subscript_expression "piVar29[3]" identifier [ number_literal ])) ;) (if_statement "if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" if (parenthesized_expression "((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18))))" ( (binary_expression "(uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))" (parenthesized_expression "(uVar26 < uVar31)" ( (binary_expression "uVar26 < uVar31" identifier < identifier) )) || (parenthesized_expression "((uVar31 == uVar26 && (uVar19 < uVar18)))" ( (parenthesized_expression "(uVar31 == uVar26 && (uVar19 < uVar18))" ( (binary_expression "uVar31 == uVar26 && (uVar19 < uVar18)" (binary_expression "uVar31 == uVar26" identifier == identifier) && (parenthesized_expression "(uVar19 < uVar18)" ( (binary_expression "uVar19 < uVar18" identifier < identifier) ))) )) ))) )) (compound_statement "{\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }" { (expression_statement "uVar28 = 0x1215;" (assignment_expression "uVar28 = 0x1215" identifier = number_literal) ;) (if_statement "if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;" if (parenthesized_expression "(*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0')" ( (binary_expression "*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0'" (pointer_expression "*(char *)(*(int *)(iVar17 + 4) + 0xac)" * (cast_expression "(char *)(*(int *)(iVar17 + 4) + 0xac)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar17 + 4) + 0xac)" ( (binary_expression "*(int *)(iVar17 + 4) + 0xac" (pointer_expression "*(int *)(iVar17 + 4)" * (cast_expression "(int *)(iVar17 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar17 + 4)" ( (binary_expression "iVar17 + 4" identifier + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;)) (expression_statement "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);" (assignment_expression "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215)" identifier = (call_expression "(**(code **)(*piVar29 + 0x24))(piVar29,0x1215)" (parenthesized_expression "(**(code **)(*piVar29 + 0x24))" ( (pointer_expression "**(code **)(*piVar29 + 0x24)" * (pointer_expression "*(code **)(*piVar29 + 0x24)" * (cast_expression "(code **)(*piVar29 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x24)" ( (binary_expression "*piVar29 + 0x24" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29,0x1215)" ( identifier , number_literal )))) ;) (expression_statement "iVar30 = *piVar23;" (assignment_expression "iVar30 = *piVar23" identifier = (pointer_expression "*piVar23" * identifier)) ;) (if_statement "if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;" if (parenthesized_expression "(-1 < *(int *)(iVar30 + 0x20))" ( (binary_expression "-1 < *(int *)(iVar30 + 0x20)" number_literal < (pointer_expression "*(int *)(iVar30 + 0x20)" * (cast_expression "(int *)(iVar30 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar30 + 0x20)" ( (binary_expression "iVar30 + 0x20" identifier + number_literal) ))))) )) (goto_statement "goto LAB_00187bd4;" goto statement_identifier ;)) (expression_statement "uVar20 = *(undefined4 *)(iVar30 + 0xc);" (assignment_expression "uVar20 = *(undefined4 *)(iVar30 + 0xc)" identifier = (pointer_expression "*(undefined4 *)(iVar30 + 0xc)" * (cast_expression "(undefined4 *)(iVar30 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar30 + 0xc)" ( (binary_expression "iVar30 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "uVar28 = *(undefined4 *)(iVar30 + 8);" (assignment_expression "uVar28 = *(undefined4 *)(iVar30 + 8)" identifier = (pointer_expression "*(undefined4 *)(iVar30 + 8)" * (cast_expression "(undefined4 *)(iVar30 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar30 + 8)" ( (binary_expression "iVar30 + 8" identifier + number_literal) ))))) ;) (if_statement "if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }" { (expression_statement "uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);" (assignment_expression "uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar4 + 0x5aa8)" ( (binary_expression "puVar4 + 0x5aa8" identifier + number_literal) )))) ;) (expression_statement "(*(code *)PTR_gold_error_00432d84)(uVar28);" (call_expression "(*(code *)PTR_gold_error_00432d84)(uVar28)" (parenthesized_expression "(*(code *)PTR_gold_error_00432d84)" ( (pointer_expression "*(code *)PTR_gold_error_00432d84" * (cast_expression "(code *)PTR_gold_error_00432d84" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar28)" ( identifier ))) ;) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) }) (else_clause "else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }" else (compound_statement "{\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }" { (expression_statement "uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);" (assignment_expression "uVar11 = (*(code *)PTR_gettext_00436818)(puVar5)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar5)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar5)" ( identifier )))) ;) (expression_statement "(*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);" (call_expression "(*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20)" (parenthesized_expression "(*(code *)PTR_gold_error_00432d84)" ( (pointer_expression "*(code *)PTR_gold_error_00432d84" * (cast_expression "(code *)PTR_gold_error_00432d84" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20)" ( identifier , (pointer_expression "*(undefined4 *)(iVar10 + 0x24)" * (cast_expression "(undefined4 *)(iVar10 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x24)" ( (binary_expression "iVar10 + 0x24" identifier + number_literal) )))) , identifier , identifier , identifier , identifier ))) ;) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) }))) }) (else_clause "else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" else (if_statement "if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }" { (if_statement "if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }" if (parenthesized_expression "(((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22))))" ( (binary_expression "((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))" (parenthesized_expression "((int)uVar27 < (int)uVar21)" ( (binary_expression "(int)uVar27 < (int)uVar21" (cast_expression "(int)uVar27" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((uVar21 == uVar27 && (uVar24 < uVar22)))" ( (parenthesized_expression "(uVar21 == uVar27 && (uVar24 < uVar22))" ( (binary_expression "uVar21 == uVar27 && (uVar24 < uVar22)" (binary_expression "uVar21 == uVar27" identifier == identifier) && (parenthesized_expression "(uVar24 < uVar22)" ( (binary_expression "uVar24 < uVar22" identifier < identifier) ))) )) ))) )) (compound_statement "{\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }" { (expression_statement "uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);" (assignment_expression "uVar28 = (*(code *)PTR_gettext_00436818)(puVar6)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar6)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar6)" ( identifier )))) ;) (expression_statement "(*(code *)PTR_gold_warning_0043245c)(uVar28);" (call_expression "(*(code *)PTR_gold_warning_0043245c)(uVar28)" (parenthesized_expression "(*(code *)PTR_gold_warning_0043245c)" ( (pointer_expression "*(code *)PTR_gold_warning_0043245c" * (cast_expression "(code *)PTR_gold_warning_0043245c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar28)" ( identifier ))) ;) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (-1 < piVar29[8]) goto LAB_00187bd4;" if (parenthesized_expression "(-1 < piVar29[8])" ( (binary_expression "-1 < piVar29[8]" number_literal < (subscript_expression "piVar29[8]" identifier [ number_literal ])) )) (goto_statement "goto LAB_00187bd4;" goto statement_identifier ;)) (expression_statement "uVar26 = piVar29[2];" (assignment_expression "uVar26 = piVar29[2]" identifier = (subscript_expression "piVar29[2]" identifier [ number_literal ])) ;) (expression_statement "uVar19 = piVar29[3];" (assignment_expression "uVar19 = piVar29[3]" identifier = (subscript_expression "piVar29[3]" identifier [ number_literal ])) ;) })) (expression_statement "uVar18 = uVar22 - uVar18;" (assignment_expression "uVar18 = uVar22 - uVar18" identifier = (binary_expression "uVar22 - uVar18" identifier - identifier)) ;) (expression_statement "bVar2 = uVar22 < uVar18;" (assignment_expression "bVar2 = uVar22 < uVar18" identifier = (binary_expression "uVar22 < uVar18" identifier < identifier)) ;) (expression_statement "uVar22 = uVar18 + uVar19;" (assignment_expression "uVar22 = uVar18 + uVar19" identifier = (binary_expression "uVar18 + uVar19" identifier + identifier)) ;) (expression_statement "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;" (assignment_expression "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" identifier = (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2)" (call_expression "(uint)(uVar22 < uVar18)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 < uVar18)" ( (binary_expression "uVar22 < uVar18" identifier < identifier) ))) + (parenthesized_expression "((uVar21 - uVar31) - (uint)bVar2)" ( (binary_expression "(uVar21 - uVar31) - (uint)bVar2" (parenthesized_expression "(uVar21 - uVar31)" ( (binary_expression "uVar21 - uVar31" identifier - identifier) )) - (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) ))) + identifier)) ;) (expression_statement "uVar24 = uVar22;" (assignment_expression "uVar24 = uVar22" identifier = identifier) ;) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) }) (else_clause "else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" else (compound_statement "{\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" { (expression_statement "uVar18 = uVar22 - uVar18;" (assignment_expression "uVar18 = uVar22 - uVar18" identifier = (binary_expression "uVar22 - uVar18" identifier - identifier)) ;) (expression_statement "bVar2 = uVar22 < uVar18;" (assignment_expression "bVar2 = uVar22 < uVar18" identifier = (binary_expression "uVar22 < uVar18" identifier < identifier)) ;) (expression_statement "uVar22 = uVar18 + uVar19;" (assignment_expression "uVar22 = uVar18 + uVar19" identifier = (binary_expression "uVar18 + uVar19" identifier + identifier)) ;) (if_statement "if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n              uVar24 = uVar22;\n            }" { (expression_statement "uVar24 = uVar22;" (assignment_expression "uVar24 = uVar22" identifier = identifier) ;) })) (expression_statement "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;" (assignment_expression "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" identifier = (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2)" (call_expression "(uint)(uVar22 < uVar18)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 < uVar18)" ( (binary_expression "uVar22 < uVar18" identifier < identifier) ))) + (parenthesized_expression "((uVar21 - uVar31) - (uint)bVar2)" ( (binary_expression "(uVar21 - uVar31) - (uint)bVar2" (parenthesized_expression "(uVar21 - uVar31)" ( (binary_expression "uVar21 - uVar31" identifier - identifier) )) - (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) ))) + identifier)) ;) (if_statement "if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n              uVar25 = uVar21;\n            }" { (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) })) }))))) (if_statement "if (piVar29[8] << 2 < 0) goto LAB_00187b94;" if (parenthesized_expression "(piVar29[8] << 2 < 0)" ( (binary_expression "piVar29[8] << 2 < 0" (binary_expression "piVar29[8] << 2" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal) < number_literal) )) (goto_statement "goto LAB_00187b94;" goto statement_identifier ;)) (expression_statement "piVar29[6] = uVar25;" (assignment_expression "piVar29[6] = uVar25" (subscript_expression "piVar29[6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar29[7] = uVar24;" (assignment_expression "piVar29[7] = uVar24" (subscript_expression "piVar29[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;" (assignment_expression "*(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) = (binary_expression "*(byte *)(piVar29 + 8) & 0xdf | 0x20" (binary_expression "*(byte *)(piVar29 + 8) & 0xdf" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (if_statement "if (piVar29[8] << 1 < 0) goto LAB_0018736c;" if (parenthesized_expression "(piVar29[8] << 1 < 0)" ( (binary_expression "piVar29[8] << 1 < 0" (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal) < number_literal) )) (goto_statement "goto LAB_0018736c;" goto statement_identifier ;)) (expression_statement "(**(code **)(*piVar29 + 0x38))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x38))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x38))" ( (pointer_expression "**(code **)(*piVar29 + 0x38)" * (pointer_expression "*(code **)(*piVar29 + 0x38)" * (cast_expression "(code **)(*piVar29 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x38)" ( (binary_expression "*piVar29 + 0x38" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29)" ( identifier ))) ;) (expression_statement "iVar10 = piVar29[8];" (assignment_expression "iVar10 = piVar29[8]" identifier = (subscript_expression "piVar29[8]" identifier [ number_literal ])) ;) (expression_statement "uVar26 = uVar24;" (assignment_expression "uVar26 = uVar24" identifier = identifier) ;) (labeled_statement "joined_r0x001878b8:\n          uVar24 = uVar26;" statement_identifier : (expression_statement "uVar24 = uVar26;" (assignment_expression "uVar24 = uVar26" identifier = identifier) ;)) (if_statement "if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }" if (parenthesized_expression "(-1 < iVar10 << 1)" ( (binary_expression "-1 < iVar10 << 1" number_literal < (binary_expression "iVar10 << 1" identifier << number_literal)) )) (compound_statement "{\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }" { (labeled_statement "LAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c)" (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,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x751c" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) }) (else_clause "else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }" else (compound_statement "{\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }" { (expression_statement "iVar10 = *piVar23;" (assignment_expression "iVar10 = *piVar23" identifier = (pointer_expression "*piVar23" * identifier)) ;) (if_statement "if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }" if (parenthesized_expression "(-1 < *(int *)(iVar10 + 0x20) << 2)" ( (binary_expression "-1 < *(int *)(iVar10 + 0x20) << 2" number_literal < (binary_expression "*(int *)(iVar10 + 0x20) << 2" (pointer_expression "*(int *)(iVar10 + 0x20)" * (cast_expression "(int *)(iVar10 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x20)" ( (binary_expression "iVar10 + 0x20" identifier + number_literal) )))) << number_literal)) )) (compound_statement "{\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }" { (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818)" (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,\n                                PTR_s_alize_xindex_004323b4 + 0x7818)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7818" identifier + number_literal) )))) ;) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "uVar21 = *(uint *)(iVar10 + 0x18);" (assignment_expression "uVar21 = *(uint *)(iVar10 + 0x18)" identifier = (pointer_expression "*(uint *)(iVar10 + 0x18)" * (cast_expression "(uint *)(iVar10 + 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x18)" ( (binary_expression "iVar10 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "uVar22 = *(uint *)(iVar10 + 0x1c);" (assignment_expression "uVar22 = *(uint *)(iVar10 + 0x1c)" identifier = (pointer_expression "*(uint *)(iVar10 + 0x1c)" * (cast_expression "(uint *)(iVar10 + 0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x1c)" ( (binary_expression "iVar10 + 0x1c" identifier + number_literal) ))))) ;) (expression_statement "uVar24 = uVar22;" (assignment_expression "uVar24 = uVar22" identifier = identifier) ;) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) }))) }) (else_clause "else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }" else (compound_statement "{\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }" { (expression_statement "uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();" (assignment_expression "uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))()" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0xc))()" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0xc))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0xc)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0xc)" * (cast_expression "(code **)(*(int *)*piVar23 + 0xc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0xc)" ( (binary_expression "*(int *)*piVar23 + 0xc" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" { (if_statement "if (*in_stack_00000024 == '\0') goto LAB_00187254;" if (parenthesized_expression "(*in_stack_00000024 == '\0')" ( (binary_expression "*in_stack_00000024 == '\0'" (pointer_expression "*in_stack_00000024" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00187254;" goto statement_identifier ;)) (expression_statement "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));" (assignment_expression "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" identifier = (call_expression "maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" identifier (argument_list "(*(Output_segment **)(iVar17 + 0x170))" ( (pointer_expression "*(Output_segment **)(iVar17 + 0x170)" * (cast_expression "(Output_segment **)(iVar17 + 0x170)" ( (type_descriptor "Output_segment **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar17 + 0x170)" ( (binary_expression "iVar17 + 0x170" identifier + number_literal) )))) )))) ;) (if_statement "if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }" if (parenthesized_expression "(uVar32 < uVar33)" ( (binary_expression "uVar32 < uVar33" identifier < identifier) )) (compound_statement "{\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }" { (expression_statement "*in_stack_00000024 = '\0';" (assignment_expression "*in_stack_00000024 = '\0'" (pointer_expression "*in_stack_00000024" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "uVar32 = uVar33;" (assignment_expression "uVar32 = uVar33" identifier = identifier) ;) }) (else_clause "else {\n            *in_stack_00000024 = '\0';\n          }" else (compound_statement "{\n            *in_stack_00000024 = '\0';\n          }" { (expression_statement "*in_stack_00000024 = '\0';" (assignment_expression "*in_stack_00000024 = '\0'" (pointer_expression "*in_stack_00000024" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) }))) (expression_statement "piVar15 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar15 = (int *)PTR_parameters_00432be0" identifier = (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" ( (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" * (cast_expression "(undefined4 *)PTR_parameters_00432be0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )))) ;) }) (else_clause "else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" else (compound_statement "{\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" { (if_statement "if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }" if (parenthesized_expression "(*in_stack_00000024 == '\0')" ( (binary_expression "*in_stack_00000024 == '\0'" (pointer_expression "*in_stack_00000024" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }" { (if_statement "if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }" if (parenthesized_expression "(*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0)" ( (binary_expression "*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0" (pointer_expression "*(Output_segment **)(iVar17 + 0x170)" * (cast_expression "(Output_segment **)(iVar17 + 0x170)" ( (type_descriptor "Output_segment **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar17 + 0x170)" ( (binary_expression "iVar17 + 0x170" identifier + number_literal) )))) == (cast_expression "(Output_segment *)0x0" ( (type_descriptor "Output_segment *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }" { (expression_statement "uVar28 = 0x11c4;" (assignment_expression "uVar28 = 0x11c4" identifier = number_literal) ;) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));" (assignment_expression "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" identifier = (call_expression "maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" identifier (argument_list "(*(Output_segment **)(iVar17 + 0x170))" ( (pointer_expression "*(Output_segment **)(iVar17 + 0x170)" * (cast_expression "(Output_segment **)(iVar17 + 0x170)" ( (type_descriptor "Output_segment **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar17 + 0x170)" ( (binary_expression "iVar17 + 0x170" identifier + number_literal) )))) )))) ;) (if_statement "if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }" if (parenthesized_expression "(uVar33 < uVar32)" ( (binary_expression "uVar33 < uVar32" identifier < identifier) )) (compound_statement "{\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }" { (expression_statement "uVar28 = 0x11c6;" (assignment_expression "uVar28 = 0x11c6" identifier = number_literal) ;) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "*in_stack_00000024 = '\x01';" (assignment_expression "*in_stack_00000024 = '\x01'" (pointer_expression "*in_stack_00000024" * identifier) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "uVar32 = uVar33;" (assignment_expression "uVar32 = uVar33" identifier = identifier) ;) })) (labeled_statement "LAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;" statement_identifier : (expression_statement "piVar15 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar15 = (int *)PTR_parameters_00432be0" identifier = (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" ( (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" * (cast_expression "(undefined4 *)PTR_parameters_00432be0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )))) ;) }))) (if_statement "if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }" { (if_statement "if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }" if (parenthesized_expression "(((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0))" ( (binary_expression "((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)" (parenthesized_expression "((uVar21 != uVar27) || (uVar22 != uVar24))" ( (binary_expression "(uVar21 != uVar27) || (uVar22 != uVar24)" (parenthesized_expression "(uVar21 != uVar27)" ( (binary_expression "uVar21 != uVar27" identifier != identifier) )) || (parenthesized_expression "(uVar22 != uVar24)" ( (binary_expression "uVar22 != uVar24" identifier != identifier) ))) )) && (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) ))) )) (compound_statement "{\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }" { (expression_statement "uVar28 = 0x11df;" (assignment_expression "uVar28 = 0x11df" identifier = number_literal) ;) (labeled_statement "LAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014)" (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 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + 0x59f0" identifier + number_literal) , identifier , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7014" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) (if_statement "if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }" if (parenthesized_expression "(uVar32 != 0)" ( (binary_expression "uVar32 != 0" identifier != number_literal) )) (compound_statement "{\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }" { (expression_statement "lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);" (assignment_expression "lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" identifier = (binary_expression "uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" identifier + (call_expression "CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" identifier (argument_list "((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" ( (binary_expression "(uint)(uVar22 - 1 < uVar22) + (uVar21 - 1)" (call_expression "(uint)(uVar22 - 1 < uVar22)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 - 1 < uVar22)" ( (binary_expression "uVar22 - 1 < uVar22" (binary_expression "uVar22 - 1" identifier - number_literal) < identifier) ))) + (parenthesized_expression "(uVar21 - 1)" ( (binary_expression "uVar21 - 1" identifier - number_literal) ))) , (binary_expression "uVar22 - 1" identifier - number_literal) ))))) ;) (expression_statement "uVar22 = (uint)lVar3 & -(int)uVar32;" (assignment_expression "uVar22 = (uint)lVar3 & -(int)uVar32" identifier = (binary_expression "(uint)lVar3 & -(int)uVar32" (cast_expression "(uint)lVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & (unary_expression "-(int)uVar32" - (cast_expression "(int)uVar32" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) (expression_statement "uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20)" identifier = (binary_expression "(uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20)" (call_expression "(uint)((ulonglong)lVar3 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar3 >> 0x20)" ( (binary_expression "(ulonglong)lVar3 >> 0x20" (cast_expression "(ulonglong)lVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) & (binary_expression "-(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20)" (unary_expression "-(uint)(-(int)uVar32 != 0)" - (call_expression "(uint)(-(int)uVar32 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(-(int)uVar32 != 0)" ( (binary_expression "-(int)uVar32 != 0" (unary_expression "-(int)uVar32" - (cast_expression "(int)uVar32" ( (type_descriptor "int" primitive_type) ) identifier)) != number_literal) )))) - (cast_expression "(int)(uVar32 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uVar32 >> 0x20)" ( (binary_expression "uVar32 >> 0x20" identifier >> number_literal) )))))) ;) })) (expression_statement "uVar26 = uVar22;" (assignment_expression "uVar26 = uVar22" identifier = identifier) ;) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) (if_statement "if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }" if (parenthesized_expression "((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0))" ( (binary_expression "(iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)" (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) && (parenthesized_expression "(uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)" ( (comma_expression "uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0" (assignment_expression "uVar26 = uVar24" identifier = identifier) , (comma_expression "uVar25 = uVar27, iVar8 == 0" (assignment_expression "uVar25 = uVar27" identifier = identifier) , (binary_expression "iVar8 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }" { (expression_statement "uVar26 = uVar22;" (assignment_expression "uVar26 = uVar22" identifier = identifier) ;) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) })) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }" if (parenthesized_expression "(piVar29[8] < 0)" ( (binary_expression "piVar29[8] < 0" (subscript_expression "piVar29[8]" identifier [ number_literal ]) < number_literal) )) (compound_statement "{\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }" { (labeled_statement "LAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540)" (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,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7540" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "bVar1 = *(byte *)(piVar29 + 8);" (assignment_expression "bVar1 = *(byte *)(piVar29 + 8)" identifier = (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) ))))) ;) (expression_statement "*(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);" (assignment_expression "*(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" (pointer_expression "*(ulonglong *)(piVar29 + 2)" * (cast_expression "(ulonglong *)(piVar29 + 2)" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 2)" ( (binary_expression "piVar29 + 2" identifier + number_literal) )))) = (binary_expression "param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" identifier + (call_expression "CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" identifier (argument_list "((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" ( (binary_expression "(uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uVar21 - uVar12)" ( (binary_expression "uVar21 - uVar12" identifier - identifier) )) - (call_expression "(uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 < uVar22 - uVar14)" ( (binary_expression "uVar22 < uVar22 - uVar14" identifier < (binary_expression "uVar22 - uVar14" identifier - identifier)) )))) , (binary_expression "uVar22 - uVar14" identifier - identifier) ))))) ;) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x7f | 0x80" (binary_expression "bVar1 & 0x7f" identifier & number_literal) | number_literal)) ;) (if_statement "if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }" if (parenthesized_expression "(piVar29[8] << 2 < 0)" ( (binary_expression "piVar29[8] << 2 < 0" (binary_expression "piVar29[8] << 2" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal) < number_literal) )) (compound_statement "{\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }" { (labeled_statement "LAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000)" (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,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 30000" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "piVar29[6] = uVar25;" (assignment_expression "piVar29[6] = uVar25" (subscript_expression "piVar29[6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar29[7] = uVar26;" (assignment_expression "piVar29[7] = uVar26" (subscript_expression "piVar29[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x5f | 0xa0" (binary_expression "bVar1 & 0x5f" identifier & number_literal) | number_literal)) ;) (expression_statement "uVar24 = uVar26;" (assignment_expression "uVar24 = uVar26" identifier = identifier) ;) (if_statement "if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }" if (parenthesized_expression "(-1 < piVar29[8] << 1)" ( (binary_expression "-1 < piVar29[8] << 1" number_literal < (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal)) )) (compound_statement "{\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }" { (expression_statement "(**(code **)(*piVar29 + 0x38))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x38))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x38))" ( (pointer_expression "**(code **)(*piVar29 + 0x38)" * (pointer_expression "*(code **)(*piVar29 + 0x38)" * (cast_expression "(code **)(*piVar29 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x38)" ( (binary_expression "*piVar29 + 0x38" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29)" ( identifier ))) ;) (expression_statement "iVar10 = piVar29[8];" (assignment_expression "iVar10 = piVar29[8]" identifier = (subscript_expression "piVar29[8]" identifier [ number_literal ])) ;) (goto_statement "goto joined_r0x001878b8;" goto statement_identifier ;) })) }) (else_clause "else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }" else (compound_statement "{\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }" { (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }" if (parenthesized_expression "(-1 < piVar29[8] << 1)" ( (binary_expression "-1 < piVar29[8] << 1" number_literal < (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal)) )) (compound_statement "{\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }" { (expression_statement "(**(code **)(*piVar29 + 0x34))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x34))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x34))" ( (pointer_expression "**(code **)(*piVar29 + 0x34)" * (pointer_expression "*(code **)(*piVar29 + 0x34)" * (cast_expression "(code **)(*piVar29 + 0x34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x34)" ( (binary_expression "*piVar29 + 0x34" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29)" ( identifier ))) ;) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) })) (expression_statement "uVar26 = piVar29[4];" (assignment_expression "uVar26 = piVar29[4]" identifier = (subscript_expression "piVar29[4]" identifier [ number_literal ])) ;) (expression_statement "uVar27 = piVar29[5];" (assignment_expression "uVar27 = piVar29[5]" identifier = (subscript_expression "piVar29[5]" identifier [ number_literal ])) ;) (expression_statement "uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);" (assignment_expression "uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600)" identifier = (call_expression "(*(code *)PTR_allocate_00432eb4)(iVar17 + 600)" (parenthesized_expression "(*(code *)PTR_allocate_00432eb4)" ( (pointer_expression "*(code *)PTR_allocate_00432eb4" * (cast_expression "(code *)PTR_allocate_00432eb4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar17 + 600)" ( (binary_expression "iVar17 + 600" identifier + number_literal) )))) ;) (expression_statement "uVar21 = (uint)((ulonglong)uVar34 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)uVar34 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)uVar34 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)uVar34 >> 0x20)" ( (binary_expression "(ulonglong)uVar34 >> 0x20" (cast_expression "(ulonglong)uVar34" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "uVar22 = (uint)uVar34;" (assignment_expression "uVar22 = (uint)uVar34" identifier = (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar21 == 0xffffffff) goto LAB_00187acc;" if (parenthesized_expression "(uVar21 == 0xffffffff)" ( (binary_expression "uVar21 == 0xffffffff" identifier == number_literal) )) (goto_statement "goto LAB_00187acc;" goto statement_identifier ;)) (while_statement "while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }" { (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (piVar29[8] < 0) goto LAB_00187b74;" if (parenthesized_expression "(piVar29[8] < 0)" ( (binary_expression "piVar29[8] < 0" (subscript_expression "piVar29[8]" identifier [ number_literal ]) < number_literal) )) (goto_statement "goto LAB_00187b74;" goto statement_identifier ;)) (expression_statement "bVar1 = *(byte *)(piVar29 + 8);" (assignment_expression "bVar1 = *(byte *)(piVar29 + 8)" identifier = (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) ))))) ;) (expression_statement "*(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);" (assignment_expression "*(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" (pointer_expression "*(ulonglong *)(piVar29 + 2)" * (cast_expression "(ulonglong *)(piVar29 + 2)" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 2)" ( (binary_expression "piVar29 + 2" identifier + number_literal) )))) = (binary_expression "param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" identifier + (call_expression "CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" identifier (argument_list "((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" ( (binary_expression "(uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uVar21 - uVar12)" ( (binary_expression "uVar21 - uVar12" identifier - identifier) )) - (call_expression "(uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 < uVar22 - uVar14)" ( (binary_expression "uVar22 < uVar22 - uVar14" identifier < (binary_expression "uVar22 - uVar14" identifier - identifier)) )))) , (binary_expression "uVar22 - uVar14" identifier - identifier) ))))) ;) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x7f | 0x80" (binary_expression "bVar1 & 0x7f" identifier & number_literal) | number_literal)) ;) (if_statement "if (piVar29[8] << 2 < 0) goto LAB_00187b94;" if (parenthesized_expression "(piVar29[8] << 2 < 0)" ( (binary_expression "piVar29[8] << 2 < 0" (binary_expression "piVar29[8] << 2" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal) < number_literal) )) (goto_statement "goto LAB_00187b94;" goto statement_identifier ;)) (expression_statement "piVar29[6] = uVar21;" (assignment_expression "piVar29[6] = uVar21" (subscript_expression "piVar29[6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar29[7] = uVar22;" (assignment_expression "piVar29[7] = uVar22" (subscript_expression "piVar29[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x5f | 0xa0" (binary_expression "bVar1 & 0x5f" identifier & number_literal) | number_literal)) ;) (if_statement "if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }" if (parenthesized_expression "(-1 < piVar29[8] << 1)" ( (binary_expression "-1 < piVar29[8] << 1" number_literal < (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal)) )) (compound_statement "{\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }" { (expression_statement "(**(code **)(*piVar29 + 0x38))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x38))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x38))" ( (pointer_expression "**(code **)(*piVar29 + 0x38)" * (pointer_expression "*(code **)(*piVar29 + 0x38)" * (cast_expression "(code **)(*piVar29 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x38)" ( (binary_expression "*piVar29 + 0x38" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29)" ( identifier ))) ;) (if_statement "if (-1 < piVar29[8] << 1) goto LAB_001878c0;" if (parenthesized_expression "(-1 < piVar29[8] << 1)" ( (binary_expression "-1 < piVar29[8] << 1" number_literal < (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal)) )) (goto_statement "goto LAB_001878c0;" goto statement_identifier ;)) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (-1 < piVar29[8] << 1) goto LAB_00187b5c;" if (parenthesized_expression "(-1 < piVar29[8] << 1)" ( (binary_expression "-1 < piVar29[8] << 1" number_literal < (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal)) )) (goto_statement "goto LAB_00187b5c;" goto statement_identifier ;)) })) (if_statement "if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;" if (parenthesized_expression "((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0))))" ( (binary_expression "(piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))" (parenthesized_expression "(piVar29[4] <= (int)uVar26)" ( (binary_expression "piVar29[4] <= (int)uVar26" (subscript_expression "piVar29[4]" identifier [ number_literal ]) <= (cast_expression "(int)uVar26" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))" ( (parenthesized_expression "(uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0))" ( (comma_expression "uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" (assignment_expression "uVar24 = uVar22" identifier = identifier) , (comma_expression "uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" (assignment_expression "uVar25 = uVar21" identifier = identifier) , (binary_expression "piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" (binary_expression "piVar29[4] != uVar26" (subscript_expression "piVar29[4]" identifier [ number_literal ]) != identifier) || (parenthesized_expression "(uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" ( (comma_expression "uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0" (assignment_expression "uVar26 = (uint)(uVar27 < (uint)piVar29[5])" identifier = (call_expression "(uint)(uVar27 < (uint)piVar29[5])" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar27 < (uint)piVar29[5])" ( (binary_expression "uVar27 < (uint)piVar29[5]" identifier < (cast_expression "(uint)piVar29[5]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "piVar29[5]" identifier [ number_literal ]))) )))) , (binary_expression "uVar26 == 0" identifier == number_literal)) ))))) )) ))) )) (break_statement "break;" break ;)) (expression_statement "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);" (assignment_expression "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29)" identifier = (call_expression "(**(code **)(*piVar29 + 0x24))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x24))" ( (pointer_expression "**(code **)(*piVar29 + 0x24)" * (pointer_expression "*(code **)(*piVar29 + 0x24)" * (cast_expression "(code **)(*piVar29 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x24)" ( (binary_expression "*piVar29 + 0x24" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29)" ( identifier )))) ;) (if_statement "if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }" { (expression_statement "uVar28 = 0x11f6;" (assignment_expression "uVar28 = 0x11f6" identifier = number_literal) ;) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;" (assignment_expression "puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + -0x299c" identifier + number_literal)) ;) (while_statement "while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }" { (expression_statement "uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);" (assignment_expression "uVar28 = (*(code *)PTR_gettext_00436818)(puVar16)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar16)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar16)" ( identifier )))) ;) (expression_statement "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);" (assignment_expression "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x24))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0x24)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0x24)" * (cast_expression "(code **)(*(int *)*piVar23 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0x24)" ( (binary_expression "*(int *)*piVar23 + 0x24" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "((int *)*piVar23)" ( (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier)) )))) ;) (expression_statement "(*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));" (call_expression "(*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24))" (parenthesized_expression "(*(code *)PTR_gold_fallback_00432ebc)" ( (pointer_expression "*(code *)PTR_gold_fallback_00432ebc" * (cast_expression "(code *)PTR_gold_fallback_00432ebc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar28,*(undefined4 *)(iVar10 + 0x24))" ( identifier , (pointer_expression "*(undefined4 *)(iVar10 + 0x24)" * (cast_expression "(undefined4 *)(iVar10 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x24)" ( (binary_expression "iVar10 + 0x24" identifier + number_literal) )))) ))) ;) (expression_statement "uVar34 = CONCAT44(uVar28,extraout_v1);" (assignment_expression "uVar34 = CONCAT44(uVar28,extraout_v1)" identifier = (call_expression "CONCAT44(uVar28,extraout_v1)" identifier (argument_list "(uVar28,extraout_v1)" ( identifier , identifier )))) ;) (labeled_statement "LAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);" statement_identifier : (expression_statement "uVar21 = (uint)((ulonglong)uVar34 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)uVar34 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)uVar34 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)uVar34 >> 0x20)" ( (binary_expression "(ulonglong)uVar34 >> 0x20" (cast_expression "(ulonglong)uVar34" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;)) (if_statement "if ((uint)uVar34 != uVar21) break;" if (parenthesized_expression "((uint)uVar34 != uVar21)" ( (binary_expression "(uint)uVar34 != uVar21" (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier) != identifier) )) (break_statement "break;" break ;)) (expression_statement "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);" (assignment_expression "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x24))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0x24)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0x24)" * (cast_expression "(code **)(*(int *)*piVar23 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0x24)" ( (binary_expression "*(int *)*piVar23 + 0x24" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "((int *)*piVar23)" ( (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier)) )))) ;) (if_statement "if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }" { (expression_statement "uVar28 = 0x11ee;" (assignment_expression "uVar28 = 0x11ee" identifier = number_literal) ;) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;" (assignment_expression "puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + -0x29e0" identifier + number_literal)) ;) })) })) }))) }))) (labeled_statement "LAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);" statement_identifier : (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)(*piVar15)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*piVar15)" ( (pointer_expression "*piVar15" * identifier) )))) ;)) (if_statement "if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }" { (labeled_statement "LAB_00187410:\n        piVar15 = (int *)*piVar23;" statement_identifier : (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;)) }) (else_clause "else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }" else (compound_statement "{\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }" { (expression_statement "puVar13 = (undefined4 *)*piVar15;" (assignment_expression "puVar13 = (undefined4 *)*piVar15" identifier = (cast_expression "(undefined4 *)*piVar15" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar15" * identifier))) ;) (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }" if (parenthesized_expression "((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0))" ( (binary_expression "(puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)" (parenthesized_expression "(puVar13[2] != 0)" ( (binary_expression "puVar13[2] != 0" (subscript_expression "puVar13[2]" identifier [ number_literal ]) != number_literal) )) && (parenthesized_expression "((puVar13[5] & 0x10) != 0)" ( (binary_expression "(puVar13[5] & 0x10) != 0" (parenthesized_expression "(puVar13[5] & 0x10)" ( (binary_expression "puVar13[5] & 0x10" (subscript_expression "puVar13[5]" identifier [ number_literal ]) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }" { (expression_statement "uVar28 = *puVar13;" (assignment_expression "uVar28 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (if_statement "if (-1 < piVar15[8] << 1) goto LAB_00187b5c;" if (parenthesized_expression "(-1 < piVar15[8] << 1)" ( (binary_expression "-1 < piVar15[8] << 1" number_literal < (binary_expression "piVar15[8] << 1" (subscript_expression "piVar15[8]" identifier [ number_literal ]) << number_literal)) )) (goto_statement "goto LAB_00187b5c;" goto statement_identifier ;)) (expression_statement "iVar30 = piVar15[5];" (assignment_expression "iVar30 = piVar15[5]" identifier = (subscript_expression "piVar15[5]" identifier [ number_literal ])) ;) (expression_statement "iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);" (assignment_expression "iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15)" identifier = (call_expression "(**(code **)(*piVar15 + 0x24))(piVar15)" (parenthesized_expression "(**(code **)(*piVar15 + 0x24))" ( (pointer_expression "**(code **)(*piVar15 + 0x24)" * (pointer_expression "*(code **)(*piVar15 + 0x24)" * (cast_expression "(code **)(*piVar15 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar15 + 0x24)" ( (binary_expression "*piVar15 + 0x24" (pointer_expression "*piVar15" * identifier) + number_literal) ))))) )) (argument_list "(piVar15)" ( identifier )))) ;) (expression_statement "puVar16 = puVar7;" (assignment_expression "puVar16 = puVar7" identifier = identifier) ;) (if_statement "if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }" { (expression_statement "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);" (assignment_expression "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x24))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0x24)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0x24)" * (cast_expression "(code **)(*(int *)*piVar23 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0x24)" ( (binary_expression "*(int *)*piVar23 + 0x24" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "((int *)*piVar23)" ( (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier)) )))) ;) (expression_statement "puVar16 = *(undefined **)(iVar10 + 0x24);" (assignment_expression "puVar16 = *(undefined **)(iVar10 + 0x24)" identifier = (pointer_expression "*(undefined **)(iVar10 + 0x24)" * (cast_expression "(undefined **)(iVar10 + 0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x24)" ( (binary_expression "iVar10 + 0x24" identifier + number_literal) ))))) ;) })) (expression_statement "(*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);" (call_expression "(*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16)" (parenthesized_expression "(*(code *)PTR_debug_00432ce0)" ( (pointer_expression "*(code *)PTR_debug_00432ce0" * (cast_expression "(code *)PTR_debug_00432ce0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16)" ( identifier , (binary_expression "puVar4 + 0x5b24" identifier + number_literal) , identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_00187410;" goto statement_identifier ;) })) }))) (expression_statement "uVar27 = uVar25;" (assignment_expression "uVar27 = uVar25" identifier = identifier) ;) (if_statement "if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }" { (if_statement "if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }" if (parenthesized_expression "(-1 < piVar15[8] << 1)" ( (binary_expression "-1 < piVar15[8] << 1" number_literal < (binary_expression "piVar15[8] << 1" (subscript_expression "piVar15[8]" identifier [ number_literal ]) << number_literal)) )) (compound_statement "{\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }" { (labeled_statement "LAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894)" (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,\n                              PTR_s_alize_xindex_004323b4 + 0x7894)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7894" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "uVar25 = uVar22 + piVar15[5];" (assignment_expression "uVar25 = uVar22 + piVar15[5]" identifier = (binary_expression "uVar22 + piVar15[5]" identifier + (subscript_expression "piVar15[5]" identifier [ number_literal ]))) ;) (if_statement "if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar24 = uVar25;\n        }" { (expression_statement "uVar24 = uVar25;" (assignment_expression "uVar24 = uVar25" identifier = identifier) ;) })) (expression_statement "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];" (assignment_expression "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" identifier = (binary_expression "(uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" (binary_expression "(uint)(uVar25 < uVar22) + uVar21" (call_expression "(uint)(uVar25 < uVar22)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar25 < uVar22)" ( (binary_expression "uVar25 < uVar22" identifier < identifier) ))) + identifier) + (subscript_expression "piVar15[4]" identifier [ number_literal ]))) ;) (if_statement "if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar27 = uVar21;\n        }" { (expression_statement "uVar27 = uVar21;" (assignment_expression "uVar27 = uVar21" identifier = identifier) ;) })) }) (else_clause "else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }" else (compound_statement "{\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }" { (expression_statement "uVar25 = uVar22;" (assignment_expression "uVar25 = uVar22" identifier = identifier) ;) (if_statement "if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }" { (if_statement "if (-1 < piVar15[8] << 1) goto LAB_00187b5c;" if (parenthesized_expression "(-1 < piVar15[8] << 1)" ( (binary_expression "-1 < piVar15[8] << 1" number_literal < (binary_expression "piVar15[8] << 1" (subscript_expression "piVar15[8]" identifier [ number_literal ]) << number_literal)) )) (goto_statement "goto LAB_00187b5c;" goto statement_identifier ;)) (expression_statement "uVar25 = uVar22 + piVar15[5];" (assignment_expression "uVar25 = uVar22 + piVar15[5]" identifier = (binary_expression "uVar22 + piVar15[5]" identifier + (subscript_expression "piVar15[5]" identifier [ number_literal ]))) ;) (expression_statement "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];" (assignment_expression "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" identifier = (binary_expression "(uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" (binary_expression "(uint)(uVar25 < uVar22) + uVar21" (call_expression "(uint)(uVar25 < uVar22)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar25 < uVar22)" ( (binary_expression "uVar25 < uVar22" identifier < identifier) ))) + identifier) + (subscript_expression "piVar15[4]" identifier [ number_literal ]))) ;) (expression_statement "uVar24 = uVar25;" (assignment_expression "uVar24 = uVar25" identifier = identifier) ;) (expression_statement "uVar27 = uVar21;" (assignment_expression "uVar27 = uVar21" identifier = identifier) ;) })) }))) (if_statement "if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }" if (parenthesized_expression "(((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25))))" ( (binary_expression "((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))" (parenthesized_expression "((int)local_78 < (int)uVar21)" ( (binary_expression "(int)local_78 < (int)uVar21" (cast_expression "(int)local_78" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((uVar21 == local_78 && (local_54 < uVar25)))" ( (parenthesized_expression "(uVar21 == local_78 && (local_54 < uVar25))" ( (binary_expression "uVar21 == local_78 && (local_54 < uVar25)" (binary_expression "uVar21 == local_78" identifier == identifier) && (parenthesized_expression "(local_54 < uVar25)" ( (binary_expression "local_54 < uVar25" identifier < identifier) ))) )) ))) )) (compound_statement "{\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }" { (expression_statement "local_78 = uVar21;" (assignment_expression "local_78 = uVar21" identifier = identifier) ;) (expression_statement "local_54 = uVar25;" (assignment_expression "local_54 = uVar25" identifier = identifier) ;) })) (expression_statement "iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);" (assignment_expression "iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15)" identifier = (call_expression "(**(code **)(*piVar15 + 0x18))(piVar15)" (parenthesized_expression "(**(code **)(*piVar15 + 0x18))" ( (pointer_expression "**(code **)(*piVar15 + 0x18)" * (pointer_expression "*(code **)(*piVar15 + 0x18)" * (cast_expression "(code **)(*piVar15 + 0x18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar15 + 0x18)" ( (binary_expression "*piVar15 + 0x18" (pointer_expression "*piVar15" * identifier) + number_literal) ))))) )) (argument_list "(piVar15)" ( identifier )))) ;) (if_statement "if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }" { (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }" if (parenthesized_expression "(*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4)" ( (binary_expression "*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4" (pointer_expression "*(code **)(*piVar15 + 0x30)" * (cast_expression "(code **)(*piVar15 + 0x30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar15 + 0x30)" ( (binary_expression "*piVar15 + 0x30" (pointer_expression "*piVar15" * identifier) + number_literal) )))) == (cast_expression "(code *)PTR_do_set_out_shndx_00432ea4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (compound_statement "{\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }" { (if_statement "if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }" if (parenthesized_expression "((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19]))" ( (binary_expression "(piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])" (parenthesized_expression "(piVar15[0x19] != -1)" ( (binary_expression "piVar15[0x19] != -1" (subscript_expression "piVar15[0x19]" identifier [ number_literal ]) != number_literal) )) && (parenthesized_expression "(*(int *)param_8 != piVar15[0x19])" ( (binary_expression "*(int *)param_8 != piVar15[0x19]" (pointer_expression "*(int *)param_8" * (cast_expression "(int *)param_8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != (subscript_expression "piVar15[0x19]" identifier [ number_literal ])) ))) )) (compound_statement "{\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }" { (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000)" (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,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7000" identifier + number_literal) )))) ;) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "piVar15[0x19] = *(int *)param_8;" (assignment_expression "piVar15[0x19] = *(int *)param_8" (subscript_expression "piVar15[0x19]" identifier [ number_literal ]) = (pointer_expression "*(int *)param_8" * (cast_expression "(int *)param_8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) }) (else_clause "else {\n          (**(code **)(*piVar15 + 0x30))();\n        }" else (compound_statement "{\n          (**(code **)(*piVar15 + 0x30))();\n        }" { (expression_statement "(**(code **)(*piVar15 + 0x30))();" (call_expression "(**(code **)(*piVar15 + 0x30))()" (parenthesized_expression "(**(code **)(*piVar15 + 0x30))" ( (pointer_expression "**(code **)(*piVar15 + 0x30)" * (pointer_expression "*(code **)(*piVar15 + 0x30)" * (cast_expression "(code **)(*piVar15 + 0x30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar15 + 0x30)" ( (binary_expression "*piVar15 + 0x30" (pointer_expression "*piVar15" * identifier) + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) (expression_statement "*(int *)param_8 = *(int *)param_8 + 1;" (assignment_expression "*(int *)param_8 = *(int *)param_8 + 1" (pointer_expression "*(int *)param_8" * (cast_expression "(int *)param_8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "*(int *)param_8 + 1" (pointer_expression "*(int *)param_8" * (cast_expression "(int *)param_8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal)) ;) })) (expression_statement "piVar23 = piVar23 + 1;" (assignment_expression "piVar23 = piVar23 + 1" identifier = (binary_expression "piVar23 + 1" identifier + number_literal)) ;) (expression_statement "uVar22 = uVar25;" (assignment_expression "uVar22 = uVar25" identifier = identifier) ;) }) while (parenthesized_expression "(*(int **)((int)param_5 + 4) != piVar23)" ( (binary_expression "*(int **)((int)param_5 + 4) != piVar23" (pointer_expression "*(int **)((int)param_5 + 4)" * (cast_expression "(int **)((int)param_5 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)param_5 + 4)" ( (binary_expression "(int)param_5 + 4" (cast_expression "(int)param_5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != identifier) )) ;) (expression_statement "param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);" (assignment_expression "param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" identifier = (binary_expression "param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" identifier + (call_expression "CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" identifier (argument_list "((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" ( (binary_expression "(local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14)" (parenthesized_expression "(local_78 - uVar12)" ( (binary_expression "local_78 - uVar12" identifier - identifier) )) - (call_expression "(uint)(local_54 < local_54 - uVar14)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_54 < local_54 - uVar14)" ( (binary_expression "local_54 < local_54 - uVar14" identifier < (binary_expression "local_54 - uVar14" identifier - identifier)) )))) , (binary_expression "local_54 - uVar14" identifier - identifier) ))))) ;) })) (expression_statement "*(uint *)param_6 = local_78;" (assignment_expression "*(uint *)param_6 = local_78" (pointer_expression "*(uint *)param_6" * (cast_expression "(uint *)param_6" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) (expression_statement "*(uint *)((int)param_6 + 4) = local_54;" (assignment_expression "*(uint *)((int)param_6 + 4) = local_54" (pointer_expression "*(uint *)((int)param_6 + 4)" * (cast_expression "(uint *)((int)param_6 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_6 + 4)" ( (binary_expression "(int)param_6 + 4" (cast_expression "(int)param_6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*param_7 = uVar27;" (assignment_expression "*param_7 = uVar27" (pointer_expression "*param_7" * identifier) = identifier) ;) (expression_statement "param_7[1] = uVar24;" (assignment_expression "param_7[1] = uVar24" (subscript_expression "param_7[1]" identifier [ number_literal ]) = identifier) ;) (return_statement "return param_4;" return identifier ;) })))
(translation_unit "/* WARNING: Removing unreachable block (ram,0x00187758) */\n/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */\n/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */\n/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */\n/* WARNING: Enum "DT": Some values do not have unique names */\n/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */\n/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */\n/* DWARF original prototype: uint64_t set_section_list_addresses(Output_segment * this, Layout *\n   layout, bool reset, Output_data_list * pdl, uint64_t addr, off_t * poff, off_t * pfoff, uint *\n   pshndx, bool * in_tls) */\n\nuint64_t __thiscall\ngold::Output_segment::set_section_list_addresses\n          (Output_segment *this,Layout *layout,bool reset,Output_data_list *pdl,uint64_t addr,\n          off_t *poff,off_t *pfoff,uint *pshndx,bool *in_tls)\n\n{\n  byte bVar1;\n  bool bVar2;\n  longlong lVar3;\n  ulonglong uVar4;\n  off_t oVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  Output_data *pOVar8;\n  int iVar9;\n  int iVar10;\n  uint uVar11;\n  int iVar12;\n  uint uVar13;\n  int *piVar14;\n  Output_data *pOVar15;\n  undefined4 *puVar16;\n  undefined4 extraout_v1;\n  uint uVar17;\n  undefined4 extraout_v1_00;\n  uint extraout_v1_01;\n  Output_data *pOVar18;\n  Output_data *pOVar19;\n  Output_segment *this_00;\n  Target *this_01;\n  uint uVar20;\n  undefined1 *puVar21;\n  undefined3 in_register_00000018;\n  undefined *puVar22;\n  _func_int_varargs **pp_Var23;\n  uint uVar24;\n  Elf_Word EVar25;\n  Output_data *pOVar26;\n  Output_data *pOVar27;\n  uint uVar28;\n  int iVar29;\n  int iVar30;\n  Output_data *pOVar31;\n  undefined4 *puVar32;\n  Output_data *pOVar33;\n  pointer ppOVar34;\n  Output_data *pOVar35;\n  Output_data *pOVar36;\n  undefined *puVar37;\n  undefined4 uVar38;\n  uint uVar39;\n  undefined *puVar40;\n  _func_int_varargs *p_Var41;\n  Output_data *pOVar42;\n  code *pcVar43;\n  ulonglong uVar44;\n  undefined8 uVar45;\n  uint64_t uVar46;\n  int iStack_c8;\n  int iStack_c4;\n  Output_data *pOStack_c0;\n  Output_data *pOStack_bc;\n  pointer ppOStack_b8;\n  Output_data *pOStack_b4;\n  Output_data *pOStack_b0;\n  undefined *puStack_ac;\n  int iStack_a8;\n  code *pcStack_a4;\n  Output_data *local_90;\n  Output_data *local_8c;\n  Output_data *local_88;\n  Output_data *local_84;\n  Output_data *local_78;\n  Output_data *local_70;\n  Output_data *local_54;\n  \n  puVar40 = PTR_s_alize_xindex_004323b4;\n  pOVar18 = *(Output_data **)((int)poff + 4);\n  ppOVar34 = (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>).\n             _M_impl._M_start;\n  pOVar15 = *(Output_data **)poff;\n  pOVar36 = *(Output_data **)pfoff;\n  pOVar35 = *(Output_data **)((int)pfoff + 4);\n  local_78 = pOVar15;\n  local_54 = pOVar18;\n  if (ppOVar34 !=\n      (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish) {\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar7 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    pOVar8 = (Output_data *)(PTR_s_alize_xindex_004323b4 + -0x29ec);\n    pOVar42 = pOVar15;\n    pOVar31 = pOVar15;\n    pOVar33 = pOVar18;\nLAB_00187154:\n    iVar9 = (*(*ppOVar34)->_vptr_Output_data[7])(*ppOVar34,8);\n    iVar10 = (*(*ppOVar34)->_vptr_Output_data[8])();\n    if (CONCAT31(in_register_00000018,reset) != 0) {\n      pOVar19 = *ppOVar34;\n      bVar1 = pOVar19->field_0x20;\n      pOVar19->field_0x20 = bVar1 & 0x5f;\n      pOVar42 = (Output_data *)-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f);\n      if (pOVar42 == (Output_data *)0x0) {\n        pOVar19->field_0x20 = bVar1 & 0x1f;\n      }\n      (*pOVar19->_vptr_Output_data[0xf])();\n    }\n    piVar14 = (int *)PTR_parameters_00432be0;\n    puVar37 = PTR_parameters_00432be0;\n    if (-1 < *(int *)&(*ppOVar34)->field_0x20) {\n      uVar11 = (*(*ppOVar34)->_vptr_Output_data[3])();\n      uVar4 = CONCAT44(uVar11,pOVar42);\n      uVar44 = CONCAT44(uVar11,pOVar42);\n      if (iVar10 == 0) {\n        if (*in_tls == false) goto LAB_00187254;\n        uVar44 = maximum_alignment(layout->tls_segment_);\n        if (uVar4 < uVar44) {\n          *in_tls = false;\n        }\n        else {\n          *in_tls = false;\n          uVar44 = uVar4;\n        }\n        piVar14 = (int *)PTR_parameters_00432be0;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar12 != 0) goto LAB_00187604;\nLAB_00187268:\n        if (pOVar31 == pOVar36) goto LAB_001878dc;\n        goto LAB_00187270;\n      }\n      uVar44 = uVar4;\n      if (*in_tls != false) goto LAB_00187254;\n      if (layout->tls_segment_ == (Output_segment *)0x0) {\n        uVar38 = 0x11c4;\n        goto LAB_00187b08;\n      }\n      uVar44 = maximum_alignment(layout->tls_segment_);\n      uVar13 = (uint)(uVar44 >> 0x20);\n      if (uVar11 <= uVar13) {\n        local_70 = pOVar42;\n        if (uVar11 == uVar13) goto LAB_00187bac;\n        goto LAB_0018723c;\n      }\nLAB_00187bbc:\n      uVar38 = 0x11c6;\n      goto LAB_00187b08;\n    }\n    iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n    if (iVar12 == 0) {\n      pOVar42 = *ppOVar34;\n      if (*(int *)&pOVar42->field_0x20 < 0) {\n        uVar11 = *(uint *)&pOVar42->address_;\n        lVar3 = addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n        pOVar19 = (Output_data *)lVar3;\n        uVar13 = (uint)((ulonglong)lVar3 >> 0x20);\n        pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n        if ((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))) {\n          uVar38 = 0x1215;\n          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;\n          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);\n          pOVar42 = *ppOVar34;\n          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);\n          local_70 = *(Output_data **)&pOVar42->address_;\n          if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }\n        }\n        else if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }\n        uVar44 = CONCAT44(uVar13,pOVar42);\n        if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n        bVar1 = pOVar42->field_0x20;\n        *(Output_data **)&pOVar42->offset_ = pOVar36;\n        *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n        pOVar42->field_0x20 = bVar1 & 0xdf | 0x20;\n        pOVar19 = pOVar35;\n        pOVar26 = pOVar36;\n        if (-1 < *(int *)&pOVar42->field_0x20 << 1) {\n          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n          iVar12 = *(int *)&pOVar42->field_0x20;\n          local_70 = pOVar42;\n          goto joined_r0x001878b8;\n        }\nLAB_0018736c:\n        pOVar36 = pOVar26;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14);\n        pOVar35 = pOVar19;\n        if (iVar12 == 0) {\nLAB_00187410:\n          pOVar42 = *ppOVar34;\n        }\n        else {\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }\n        if (iVar10 == 0) {\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }\n        }\n        else {\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }\nLAB_00187b5c:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);\nLAB_00187b74:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)\n        ;\nLAB_00187b94:\n        do {\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        } while( true );\n      }\nLAB_00187bd4:\n      puVar22 = PTR_s_alize_xindex_004323b4 + 0x7850;\n      (*(code *)PTR_do_gold_unreachable_004323c4)\n                (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,puVar22);\n    }\n    else {\n      pOVar42 = *ppOVar34;\n      puVar22 = PTR_s_alize_xindex_004323b4;\n      if (*(int *)&pOVar42->field_0x20 << 2 < 0) {\n        pOVar31 = *(Output_data **)&pOVar42->offset_;\n        pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);\n        pOVar19 = pOVar33;\n        pOVar26 = pOVar31;\n        goto LAB_0018736c;\n      }\n    }\n    uVar11 = 0xe3;\n    pcVar43 = set_offset;\n    this_00 = (Output_segment *)(PTR_s_alize_xindex_004323b4 + -0x4fe0);\n    puVar40 = PTR_do_gold_unreachable_004323c4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)(this_00,0xe3,puVar22 + 0x7818);\n    pOStack_c0 = pOVar31;\n    pOStack_bc = pOVar33;\n    ppOStack_b8 = ppOVar34;\n    pOStack_b4 = pOVar35;\n    pOStack_b0 = pOVar36;\n    puStack_ac = puVar37;\n    iStack_a8 = iVar9;\n    pcStack_a4 = pcVar43;\n    if (this_00->type_ == 1) {\n      puVar21 = (undefined1 *)0x1255;\n      goto LAB_001882ec;\n    }\n    if (*(int *)&this_00->field_0x1a0 << 1 < 0) goto LAB_001882e8;\n    ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n               _M_start;\n    if (this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n        _M_finish != ppOVar34) {\n      pOVar35 = (Output_data *)0x0;\n      iStack_c4 = 0;\n      iStack_c8 = 0;\n      goto LAB_00187c80;\n    }\n    puVar21 = (undefined1 *)0x125f;\n    if (uVar11 == 0) {\n      uVar11 = (byte)this_00->field_0x1a0 & 0xffffffbf | 0x40;\n      *(undefined4 *)((int)&this_00->vaddr_ + 4) = 0;\n      *(undefined4 *)&this_00->vaddr_ = 0;\n      *(undefined4 *)((int)&this_00->paddr_ + 4) = 0;\n      *(undefined4 *)&this_00->paddr_ = 0;\n      this_00->field_0x1a0 = (char)uVar11;\n      *(undefined4 *)((int)&this_00->memsz_ + 4) = 0;\n      *(undefined4 *)&this_00->memsz_ = 0;\n      *(undefined4 *)((int)&this_00->min_p_align_ + 4) = 0;\n      *(undefined4 *)&this_00->min_p_align_ = 0;\n      *(undefined4 *)((int)&this_00->offset_ + 4) = 0;\n      *(undefined4 *)&this_00->offset_ = 0;\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\n      return CONCAT44(uVar11,1);\n    }\n    goto LAB_001882ec;\n  }\nLAB_00187518:\n  *(Output_data **)poff = local_78;\n  *(Output_data **)((int)poff + 4) = local_54;\n  *(Output_data **)pfoff = pOVar36;\n  *(Output_data **)((int)pfoff + 4) = pOVar35;\n  return addr;\ncode_r0x00187434:\n  pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n  pOVar31 = (Output_data *)\n            ((int)&pOVar31->_vptr_Output_data +\n            (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n  pOVar35 = pOVar19;\n  pOVar36 = pOVar31;\nLAB_00187458:\n  if (((int)local_78 < (int)pOVar31) || ((pOVar31 == local_78 && (local_54 < pOVar19)))) {\n    local_78 = pOVar31;\n    local_54 = pOVar19;\n  }\n  iVar9 = (*pOVar42->_vptr_Output_data[6])(pOVar42);\n  if (iVar9 != 0) {\n    pOVar42 = *ppOVar34;\n    if (pOVar42->_vptr_Output_data[0xc] == (_func_int_varargs *)PTR_do_set_out_shndx_00432ea4) {\n      uVar11 = (uint)pOVar42[2].data_size_;\n      if ((uVar11 != 0xffffffff) && (*pshndx != uVar11)) {\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  );\n        local_78 = pOVar15;\n        local_54 = pOVar18;\n        goto LAB_00187518;\n      }\n      *(uint *)((int)&pOVar42[2].data_size_ + 4) = *pshndx;\n    }\n    else {\n      (*pOVar42->_vptr_Output_data[0xc])();\n    }\n    *pshndx = *pshndx + 1;\n  }\n  ppOVar34 = ppOVar34 + 1;\n  pOVar42 = local_54;\n  pOVar33 = pOVar19;\n  if ((pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish == ppOVar34) goto code_r0x001874e4;\n  goto LAB_00187154;\ncode_r0x001874e4:\n  addr = addr + CONCAT44((undefined *)\n                         ((int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15)),(Output_data *)((int)local_54 - (int)pOVar18));\n  goto LAB_00187518;\nLAB_001878c0:\n  (*(code *)PTR_do_gold_unreachable_004323c4)\n            (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,PTR_s_alize_xindex_004323b4 + 0x751c);\nLAB_001878dc:\n  local_70 = (Output_data *)uVar44;\n  if (pOVar33 == pOVar35) {\n    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;\n    pOVar42 = pOVar35;\n    pOVar19 = pOVar36;\n  }\n  else {\nLAB_00187270:\n    local_70 = (Output_data *)uVar44;\n    if (iVar9 == 0) {\n      uVar38 = 0x11df;\n      goto LAB_00187b08;\n    }\n    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;\n    pOVar42 = pOVar35;\n    pOVar19 = pOVar36;\n  }\n  local_70 = (Output_data *)uVar44;\n  if (uVar11 != 0) {\n    lVar3 = uVar44 + CONCAT44((undefined *)\n                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)),\n                              &pOVar33[-1].field_0x27);\n    pOVar33 = (Output_data *)((uint)lVar3 & -(int)local_70);\n    pOVar31 = (Output_data *)\n              ((uint)((ulonglong)lVar3 >> 0x20) &\n              -(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20));\n  }\n  pOVar35 = pOVar33;\n  pOVar36 = pOVar31;\n  if ((iVar10 == 0) && (pOVar35 = pOVar42, pOVar36 = pOVar19, iVar9 == 0)) {\n    pOVar35 = pOVar33;\n    pOVar36 = pOVar31;\n  }\n  pOVar42 = *ppOVar34;\n  uVar44 = CONCAT44(pOVar42,local_70);\n  if (*(int *)&pOVar42->field_0x20 < 0) goto LAB_00187b74;\n  bVar1 = pOVar42->field_0x20;\n  pOVar42->address_ =\n       addr + CONCAT44((undefined *)\n                       ((int)pOVar31 +\n                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n  pOVar42->field_0x20 = bVar1 & 0x7f | 0x80;\n  if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n  *(Output_data **)&pOVar42->offset_ = pOVar36;\n  *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n  pOVar42->field_0x20 = bVar1 & 0x5f | 0xa0;\n  pOVar19 = pOVar35;\n  pOVar26 = pOVar36;\n  if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto LAB_0018736c;\n  (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n  iVar12 = *(int *)&pOVar42->field_0x20;\njoined_r0x001878b8:\n  pOVar19 = pOVar35;\n  pOVar26 = pOVar36;\n  if (iVar12 << 1 < 0) goto LAB_0018736c;\n  goto LAB_001878c0;\nLAB_00187c80:\n  do {\n    pOVar36 = *ppOVar34;\n    if (pOVar35 == (Output_data *)0x0) {\nLAB_00187f58:\n      pOVar35 = pOVar36;\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)&pOVar35->field_0x20) goto LAB_001882b0;\n      uVar17 = *(uint *)&pOVar35->address_;\n      uVar20 = (uint)pOVar35->address_;\n      if ((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))) goto LAB_00187f58;\n      if ((uVar17 == uVar13) && (uVar20 == uVar24)) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;\n        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;\n      }\n    }\n    iVar9 = (*pOVar36->_vptr_Output_data[6])();\n    if ((iVar9 == 0) ||\n       (iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8)) {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c4;\n      piVar14 = &iStack_c4;\n      if (iStack_c4 != 0) goto LAB_00187d18;\nLAB_00187f0c:\n      *piVar14 = (int)pOVar36;\n    }\n    else {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c8;\n      piVar14 = &iStack_c8;\n      if (iStack_c8 == 0) goto LAB_00187f0c;\nLAB_00187d18:\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)(iVar10 + 0x20)) goto LAB_001882b0;\n      uVar17 = *(uint *)(iVar10 + 8);\n      if ((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))\n      goto LAB_00187f0c;\n      if ((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;\n        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;\n        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }\n      }\n    }\n    ppOVar34 = ppOVar34 + 1;\n  } while (this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n           _M_finish != ppOVar34);\n  iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n  if (-1 < *(int *)&pOVar35->field_0x20) {\nLAB_001882b4:\n    (**(code **)(puVar40 + 0x2aa7bc))(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xc5,iVar9 + 0x7850);\n    goto LAB_001882cc;\n  }\n  uVar38 = *(undefined4 *)&pOVar35->address_;\n  p_Var41 = pOVar35->_vptr_Output_data[4];\n  *(int *)((int)&this_00->vaddr_ + 4) = (int)pOVar35->address_;\n  *(undefined4 *)&this_00->vaddr_ = uVar38;\n  iVar9 = (*p_Var41)(pOVar35);\n  if (iVar9 == 0) {\n    pp_Var23 = *(_func_int_varargs ***)((int)&this_00->vaddr_ + 4);\n    iVar9 = *(int *)&this_00->vaddr_;\nLAB_00187da8:\n    iVar10 = *(int *)&pOVar35->field_0x20;\n    bVar1 = this_00->field_0x1a0;\n    *(_func_int_varargs ***)((int)&this_00->paddr_ + 4) = pp_Var23;\n    *(int *)&this_00->paddr_ = iVar9;\n    this_00->field_0x1a0 = bVar1 & 0xbf | 0x40;\n    if (-1 < iVar10 << 2) {\n      pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n      (*pcVar43)(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(puVar40 + 0x2aa7ac) + 0x7818);\nLAB_00188350:\n      this_01 = (Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec);\n      (*pcVar43)(this_01,0x69,*(int *)(puVar40 + 0x2aa7ac) + 0x78f8);\nLAB_00188368:\n      iVar9 = *(int *)(puVar40 + 0x2acab0) + 0x2a90;\n      Target::abi_pagesize(this_01);\n      if (*(int *)(this_01 + 0x198) == 7) {\n        puVar32 = *(undefined4 **)this_01;\n        puVar16 = *(undefined4 **)(this_01 + 4);\n        uVar38 = 7;\n        if (puVar32 != puVar16) {\n          do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);\n        }\n        return CONCAT44(puVar16,uVar38);\n      }\n      iVar10 = *(int *)(iVar9 + 0x2aa03c) + 0x59f0;\n      (**(code **)(iVar9 + 0x2aa04c))(iVar10,0x12bb,*(int *)(iVar9 + 0x2aa03c) + 0x6fd4);\n      piVar14 = (int *)(iVar10 + 4);\n      uVar11 = extraout_v1_01;\n      do {\n        puVar16 = (undefined4 *)piVar14[-1];\n        if (puVar16 != (undefined4 *)*piVar14) {\n          do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);\n        }\n        piVar14 = piVar14 + 3;\n      } while (piVar14 != (int *)(iVar10 + 0x160));\n      return (uint64_t)uVar11;\n    }\n    uVar38 = *(undefined4 *)&pOVar35->offset_;\n    *(int *)((int)&this_00->offset_ + 4) = (int)pOVar35->offset_;\n    *(undefined4 *)&this_00->offset_ = uVar38;\n    if (iStack_c4 == 0) {\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\nLAB_00187e40:\n      if (-1 < *(int *)(iStack_c8 + 0x20)) {\nLAB_001882b0:\n        iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n        goto LAB_001882b4;\n      }\n      iVar9 = *(int *)(iStack_c8 + 8);\n      uVar13 = *(uint *)(iStack_c8 + 0xc);\n      if (*(int *)(iStack_c8 + 0x20) << 1 < 0) {\n        iVar12 = *(int *)&this_00->vaddr_;\n        uVar17 = (uint)this_00->vaddr_;\n        iVar10 = iStack_c8;\nLAB_00187e60:\n        uVar24 = uVar11 - uVar17;\n        iVar30 = *(int *)(iVar10 + 0x10);\n        uVar28 = (uint)this_00->filesz_;\n        iVar29 = *(int *)&this_00->filesz_;\n        uVar13 = uVar24 + uVar13;\n        EVar25 = this_00->type_;\n        uVar20 = uVar13 + *(int *)(iVar10 + 0x14);\n        uVar39 = uVar28 + uVar11;\n        *(uint *)((int)&this_00->memsz_ + 4) = uVar20;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar39;\n        iVar9 = (uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30;\n        *(int *)&this_00->memsz_ = iVar9;\n        uVar11 = 0x6474e552;\n        *(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29;\n        if (EVar25 == 0x6474e552) {\n          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);\n          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;\n          iVar10 = *(int *)(this_01 + 8);\n          uVar20 = uVar17 + uVar20;\n          if (iVar10 == 0) goto LAB_00188368;\n          iVar29 = *(int *)(iVar10 + 0x5228);\n          iVar10 = *(int *)(iVar10 + 0x522c);\n          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;\n          if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }\n          uVar24 = uVar20 - 1;\n          uVar11 = -(uint)(-iVar10 != 0) - iVar29;\n          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;\n          puVar21 = &DAT_000012a8;\n          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;\n          EVar25 = this_00->type_;\n        }\njoined_r0x001880f8:\n        if (EVar25 != 7) {\n          return CONCAT44(7,uVar11);\n        }\n        uVar46 = maximum_alignment(this_00);\n        if (uVar46 == 0) {\n          uVar13 = *(uint *)&this_00->memsz_;\n          uVar11 = (uint)this_00->memsz_;\n          *(uint *)&this_00->memsz_ = uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n        }\n        else {\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }\n        return CONCAT44(uVar11,uVar13);\n      }\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)(iStack_c4 + 0x20)) goto LAB_001882b4;\n      iVar9 = *(int *)(iStack_c4 + 8);\n      uVar13 = *(uint *)(iStack_c4 + 0xc);\n      if (*(int *)(iStack_c4 + 0x20) << 1 < 0) {\n        iVar10 = *(int *)(iStack_c4 + 0x10);\n        uVar17 = (uint)this_00->vaddr_;\n        uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);\n        iVar12 = *(int *)&this_00->vaddr_;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;\n        *(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17);\n        iVar10 = iStack_c4;\n        if (iStack_c8 != 0) goto LAB_00187e40;\n        goto LAB_00187e60;\n      }\n    }\nLAB_001882cc:\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xcf,*(int *)(puVar40 + 0x2aa7ac) + 0x7894);\nLAB_001882e8:\n    puVar21 = (undefined1 *)0x1257;\n  }\n  else {\n    pp_Var23 = pOVar35->_vptr_Output_data;\n    if (pp_Var23[5] != *(_func_int_varargs **)(puVar40 + 0x2ac750)) {\n      iVar9 = (*pp_Var23[5])(pOVar35);\n      goto LAB_00187da8;\n    }\n    if (*(int *)&pOVar35[3].field_0x20 << 7 < 0) {\n      pp_Var23 = *(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4);\n      iVar9 = *(int *)&pOVar35[1].data_size_;\n      goto LAB_00187da8;\n    }\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,&DAT_0000107b,\n               *(int *)(puVar40 + 0x2aa7ac) + 0x6fe4);\nLAB_00188324:\n    puVar21 = &DAT_000012a8;\n  }\nLAB_001882ec:\n  do {\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + 0x59f0,puVar21,*(int *)(puVar40 + 0x2aa7ac) + 0x6ff4);\nLAB_00188304:\n    puVar21 = (undefined1 *)0x12b1;\n  } while( true );\n}\n\n" comment comment comment comment comment comment comment comment (function_definition "uint64_t __thiscall\ngold::Output_segment::set_section_list_addresses\n          (Output_segment *this,Layout *layout,bool reset,Output_data_list *pdl,uint64_t addr,\n          off_t *poff,off_t *pfoff,uint *pshndx,bool *in_tls)\n\n{\n  byte bVar1;\n  bool bVar2;\n  longlong lVar3;\n  ulonglong uVar4;\n  off_t oVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  Output_data *pOVar8;\n  int iVar9;\n  int iVar10;\n  uint uVar11;\n  int iVar12;\n  uint uVar13;\n  int *piVar14;\n  Output_data *pOVar15;\n  undefined4 *puVar16;\n  undefined4 extraout_v1;\n  uint uVar17;\n  undefined4 extraout_v1_00;\n  uint extraout_v1_01;\n  Output_data *pOVar18;\n  Output_data *pOVar19;\n  Output_segment *this_00;\n  Target *this_01;\n  uint uVar20;\n  undefined1 *puVar21;\n  undefined3 in_register_00000018;\n  undefined *puVar22;\n  _func_int_varargs **pp_Var23;\n  uint uVar24;\n  Elf_Word EVar25;\n  Output_data *pOVar26;\n  Output_data *pOVar27;\n  uint uVar28;\n  int iVar29;\n  int iVar30;\n  Output_data *pOVar31;\n  undefined4 *puVar32;\n  Output_data *pOVar33;\n  pointer ppOVar34;\n  Output_data *pOVar35;\n  Output_data *pOVar36;\n  undefined *puVar37;\n  undefined4 uVar38;\n  uint uVar39;\n  undefined *puVar40;\n  _func_int_varargs *p_Var41;\n  Output_data *pOVar42;\n  code *pcVar43;\n  ulonglong uVar44;\n  undefined8 uVar45;\n  uint64_t uVar46;\n  int iStack_c8;\n  int iStack_c4;\n  Output_data *pOStack_c0;\n  Output_data *pOStack_bc;\n  pointer ppOStack_b8;\n  Output_data *pOStack_b4;\n  Output_data *pOStack_b0;\n  undefined *puStack_ac;\n  int iStack_a8;\n  code *pcStack_a4;\n  Output_data *local_90;\n  Output_data *local_8c;\n  Output_data *local_88;\n  Output_data *local_84;\n  Output_data *local_78;\n  Output_data *local_70;\n  Output_data *local_54;\n  \n  puVar40 = PTR_s_alize_xindex_004323b4;\n  pOVar18 = *(Output_data **)((int)poff + 4);\n  ppOVar34 = (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>).\n             _M_impl._M_start;\n  pOVar15 = *(Output_data **)poff;\n  pOVar36 = *(Output_data **)pfoff;\n  pOVar35 = *(Output_data **)((int)pfoff + 4);\n  local_78 = pOVar15;\n  local_54 = pOVar18;\n  if (ppOVar34 !=\n      (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish) {\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar7 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    pOVar8 = (Output_data *)(PTR_s_alize_xindex_004323b4 + -0x29ec);\n    pOVar42 = pOVar15;\n    pOVar31 = pOVar15;\n    pOVar33 = pOVar18;\nLAB_00187154:\n    iVar9 = (*(*ppOVar34)->_vptr_Output_data[7])(*ppOVar34,8);\n    iVar10 = (*(*ppOVar34)->_vptr_Output_data[8])();\n    if (CONCAT31(in_register_00000018,reset) != 0) {\n      pOVar19 = *ppOVar34;\n      bVar1 = pOVar19->field_0x20;\n      pOVar19->field_0x20 = bVar1 & 0x5f;\n      pOVar42 = (Output_data *)-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f);\n      if (pOVar42 == (Output_data *)0x0) {\n        pOVar19->field_0x20 = bVar1 & 0x1f;\n      }\n      (*pOVar19->_vptr_Output_data[0xf])();\n    }\n    piVar14 = (int *)PTR_parameters_00432be0;\n    puVar37 = PTR_parameters_00432be0;\n    if (-1 < *(int *)&(*ppOVar34)->field_0x20) {\n      uVar11 = (*(*ppOVar34)->_vptr_Output_data[3])();\n      uVar4 = CONCAT44(uVar11,pOVar42);\n      uVar44 = CONCAT44(uVar11,pOVar42);\n      if (iVar10 == 0) {\n        if (*in_tls == false) goto LAB_00187254;\n        uVar44 = maximum_alignment(layout->tls_segment_);\n        if (uVar4 < uVar44) {\n          *in_tls = false;\n        }\n        else {\n          *in_tls = false;\n          uVar44 = uVar4;\n        }\n        piVar14 = (int *)PTR_parameters_00432be0;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar12 != 0) goto LAB_00187604;\nLAB_00187268:\n        if (pOVar31 == pOVar36) goto LAB_001878dc;\n        goto LAB_00187270;\n      }\n      uVar44 = uVar4;\n      if (*in_tls != false) goto LAB_00187254;\n      if (layout->tls_segment_ == (Output_segment *)0x0) {\n        uVar38 = 0x11c4;\n        goto LAB_00187b08;\n      }\n      uVar44 = maximum_alignment(layout->tls_segment_);\n      uVar13 = (uint)(uVar44 >> 0x20);\n      if (uVar11 <= uVar13) {\n        local_70 = pOVar42;\n        if (uVar11 == uVar13) goto LAB_00187bac;\n        goto LAB_0018723c;\n      }\nLAB_00187bbc:\n      uVar38 = 0x11c6;\n      goto LAB_00187b08;\n    }\n    iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n    if (iVar12 == 0) {\n      pOVar42 = *ppOVar34;\n      if (*(int *)&pOVar42->field_0x20 < 0) {\n        uVar11 = *(uint *)&pOVar42->address_;\n        lVar3 = addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n        pOVar19 = (Output_data *)lVar3;\n        uVar13 = (uint)((ulonglong)lVar3 >> 0x20);\n        pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n        if ((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))) {\n          uVar38 = 0x1215;\n          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;\n          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);\n          pOVar42 = *ppOVar34;\n          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);\n          local_70 = *(Output_data **)&pOVar42->address_;\n          if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }\n        }\n        else if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }\n        uVar44 = CONCAT44(uVar13,pOVar42);\n        if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n        bVar1 = pOVar42->field_0x20;\n        *(Output_data **)&pOVar42->offset_ = pOVar36;\n        *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n        pOVar42->field_0x20 = bVar1 & 0xdf | 0x20;\n        pOVar19 = pOVar35;\n        pOVar26 = pOVar36;\n        if (-1 < *(int *)&pOVar42->field_0x20 << 1) {\n          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n          iVar12 = *(int *)&pOVar42->field_0x20;\n          local_70 = pOVar42;\n          goto joined_r0x001878b8;\n        }\nLAB_0018736c:\n        pOVar36 = pOVar26;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14);\n        pOVar35 = pOVar19;\n        if (iVar12 == 0) {\nLAB_00187410:\n          pOVar42 = *ppOVar34;\n        }\n        else {\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }\n        if (iVar10 == 0) {\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }\n        }\n        else {\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }\nLAB_00187b5c:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);\nLAB_00187b74:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)\n        ;\nLAB_00187b94:\n        do {\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        } while( true );\n      }\nLAB_00187bd4:\n      puVar22 = PTR_s_alize_xindex_004323b4 + 0x7850;\n      (*(code *)PTR_do_gold_unreachable_004323c4)\n                (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,puVar22);\n    }\n    else {\n      pOVar42 = *ppOVar34;\n      puVar22 = PTR_s_alize_xindex_004323b4;\n      if (*(int *)&pOVar42->field_0x20 << 2 < 0) {\n        pOVar31 = *(Output_data **)&pOVar42->offset_;\n        pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);\n        pOVar19 = pOVar33;\n        pOVar26 = pOVar31;\n        goto LAB_0018736c;\n      }\n    }\n    uVar11 = 0xe3;\n    pcVar43 = set_offset;\n    this_00 = (Output_segment *)(PTR_s_alize_xindex_004323b4 + -0x4fe0);\n    puVar40 = PTR_do_gold_unreachable_004323c4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)(this_00,0xe3,puVar22 + 0x7818);\n    pOStack_c0 = pOVar31;\n    pOStack_bc = pOVar33;\n    ppOStack_b8 = ppOVar34;\n    pOStack_b4 = pOVar35;\n    pOStack_b0 = pOVar36;\n    puStack_ac = puVar37;\n    iStack_a8 = iVar9;\n    pcStack_a4 = pcVar43;\n    if (this_00->type_ == 1) {\n      puVar21 = (undefined1 *)0x1255;\n      goto LAB_001882ec;\n    }\n    if (*(int *)&this_00->field_0x1a0 << 1 < 0) goto LAB_001882e8;\n    ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n               _M_start;\n    if (this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n        _M_finish != ppOVar34) {\n      pOVar35 = (Output_data *)0x0;\n      iStack_c4 = 0;\n      iStack_c8 = 0;\n      goto LAB_00187c80;\n    }\n    puVar21 = (undefined1 *)0x125f;\n    if (uVar11 == 0) {\n      uVar11 = (byte)this_00->field_0x1a0 & 0xffffffbf | 0x40;\n      *(undefined4 *)((int)&this_00->vaddr_ + 4) = 0;\n      *(undefined4 *)&this_00->vaddr_ = 0;\n      *(undefined4 *)((int)&this_00->paddr_ + 4) = 0;\n      *(undefined4 *)&this_00->paddr_ = 0;\n      this_00->field_0x1a0 = (char)uVar11;\n      *(undefined4 *)((int)&this_00->memsz_ + 4) = 0;\n      *(undefined4 *)&this_00->memsz_ = 0;\n      *(undefined4 *)((int)&this_00->min_p_align_ + 4) = 0;\n      *(undefined4 *)&this_00->min_p_align_ = 0;\n      *(undefined4 *)((int)&this_00->offset_ + 4) = 0;\n      *(undefined4 *)&this_00->offset_ = 0;\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\n      return CONCAT44(uVar11,1);\n    }\n    goto LAB_001882ec;\n  }\nLAB_00187518:\n  *(Output_data **)poff = local_78;\n  *(Output_data **)((int)poff + 4) = local_54;\n  *(Output_data **)pfoff = pOVar36;\n  *(Output_data **)((int)pfoff + 4) = pOVar35;\n  return addr;\ncode_r0x00187434:\n  pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n  pOVar31 = (Output_data *)\n            ((int)&pOVar31->_vptr_Output_data +\n            (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n  pOVar35 = pOVar19;\n  pOVar36 = pOVar31;\nLAB_00187458:\n  if (((int)local_78 < (int)pOVar31) || ((pOVar31 == local_78 && (local_54 < pOVar19)))) {\n    local_78 = pOVar31;\n    local_54 = pOVar19;\n  }\n  iVar9 = (*pOVar42->_vptr_Output_data[6])(pOVar42);\n  if (iVar9 != 0) {\n    pOVar42 = *ppOVar34;\n    if (pOVar42->_vptr_Output_data[0xc] == (_func_int_varargs *)PTR_do_set_out_shndx_00432ea4) {\n      uVar11 = (uint)pOVar42[2].data_size_;\n      if ((uVar11 != 0xffffffff) && (*pshndx != uVar11)) {\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  );\n        local_78 = pOVar15;\n        local_54 = pOVar18;\n        goto LAB_00187518;\n      }\n      *(uint *)((int)&pOVar42[2].data_size_ + 4) = *pshndx;\n    }\n    else {\n      (*pOVar42->_vptr_Output_data[0xc])();\n    }\n    *pshndx = *pshndx + 1;\n  }\n  ppOVar34 = ppOVar34 + 1;\n  pOVar42 = local_54;\n  pOVar33 = pOVar19;\n  if ((pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish == ppOVar34) goto code_r0x001874e4;\n  goto LAB_00187154;\ncode_r0x001874e4:\n  addr = addr + CONCAT44((undefined *)\n                         ((int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15)),(Output_data *)((int)local_54 - (int)pOVar18));\n  goto LAB_00187518;\nLAB_001878c0:\n  (*(code *)PTR_do_gold_unreachable_004323c4)\n            (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,PTR_s_alize_xindex_004323b4 + 0x751c);\nLAB_001878dc:\n  local_70 = (Output_data *)uVar44;\n  if (pOVar33 == pOVar35) {\n    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;\n    pOVar42 = pOVar35;\n    pOVar19 = pOVar36;\n  }\n  else {\nLAB_00187270:\n    local_70 = (Output_data *)uVar44;\n    if (iVar9 == 0) {\n      uVar38 = 0x11df;\n      goto LAB_00187b08;\n    }\n    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;\n    pOVar42 = pOVar35;\n    pOVar19 = pOVar36;\n  }\n  local_70 = (Output_data *)uVar44;\n  if (uVar11 != 0) {\n    lVar3 = uVar44 + CONCAT44((undefined *)\n                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)),\n                              &pOVar33[-1].field_0x27);\n    pOVar33 = (Output_data *)((uint)lVar3 & -(int)local_70);\n    pOVar31 = (Output_data *)\n              ((uint)((ulonglong)lVar3 >> 0x20) &\n              -(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20));\n  }\n  pOVar35 = pOVar33;\n  pOVar36 = pOVar31;\n  if ((iVar10 == 0) && (pOVar35 = pOVar42, pOVar36 = pOVar19, iVar9 == 0)) {\n    pOVar35 = pOVar33;\n    pOVar36 = pOVar31;\n  }\n  pOVar42 = *ppOVar34;\n  uVar44 = CONCAT44(pOVar42,local_70);\n  if (*(int *)&pOVar42->field_0x20 < 0) goto LAB_00187b74;\n  bVar1 = pOVar42->field_0x20;\n  pOVar42->address_ =\n       addr + CONCAT44((undefined *)\n                       ((int)pOVar31 +\n                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n  pOVar42->field_0x20 = bVar1 & 0x7f | 0x80;\n  if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n  *(Output_data **)&pOVar42->offset_ = pOVar36;\n  *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n  pOVar42->field_0x20 = bVar1 & 0x5f | 0xa0;\n  pOVar19 = pOVar35;\n  pOVar26 = pOVar36;\n  if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto LAB_0018736c;\n  (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n  iVar12 = *(int *)&pOVar42->field_0x20;\njoined_r0x001878b8:\n  pOVar19 = pOVar35;\n  pOVar26 = pOVar36;\n  if (iVar12 << 1 < 0) goto LAB_0018736c;\n  goto LAB_001878c0;\nLAB_00187c80:\n  do {\n    pOVar36 = *ppOVar34;\n    if (pOVar35 == (Output_data *)0x0) {\nLAB_00187f58:\n      pOVar35 = pOVar36;\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)&pOVar35->field_0x20) goto LAB_001882b0;\n      uVar17 = *(uint *)&pOVar35->address_;\n      uVar20 = (uint)pOVar35->address_;\n      if ((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))) goto LAB_00187f58;\n      if ((uVar17 == uVar13) && (uVar20 == uVar24)) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;\n        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;\n      }\n    }\n    iVar9 = (*pOVar36->_vptr_Output_data[6])();\n    if ((iVar9 == 0) ||\n       (iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8)) {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c4;\n      piVar14 = &iStack_c4;\n      if (iStack_c4 != 0) goto LAB_00187d18;\nLAB_00187f0c:\n      *piVar14 = (int)pOVar36;\n    }\n    else {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c8;\n      piVar14 = &iStack_c8;\n      if (iStack_c8 == 0) goto LAB_00187f0c;\nLAB_00187d18:\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)(iVar10 + 0x20)) goto LAB_001882b0;\n      uVar17 = *(uint *)(iVar10 + 8);\n      if ((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))\n      goto LAB_00187f0c;\n      if ((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;\n        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;\n        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }\n      }\n    }\n    ppOVar34 = ppOVar34 + 1;\n  } while (this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n           _M_finish != ppOVar34);\n  iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n  if (-1 < *(int *)&pOVar35->field_0x20) {\nLAB_001882b4:\n    (**(code **)(puVar40 + 0x2aa7bc))(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xc5,iVar9 + 0x7850);\n    goto LAB_001882cc;\n  }\n  uVar38 = *(undefined4 *)&pOVar35->address_;\n  p_Var41 = pOVar35->_vptr_Output_data[4];\n  *(int *)((int)&this_00->vaddr_ + 4) = (int)pOVar35->address_;\n  *(undefined4 *)&this_00->vaddr_ = uVar38;\n  iVar9 = (*p_Var41)(pOVar35);\n  if (iVar9 == 0) {\n    pp_Var23 = *(_func_int_varargs ***)((int)&this_00->vaddr_ + 4);\n    iVar9 = *(int *)&this_00->vaddr_;\nLAB_00187da8:\n    iVar10 = *(int *)&pOVar35->field_0x20;\n    bVar1 = this_00->field_0x1a0;\n    *(_func_int_varargs ***)((int)&this_00->paddr_ + 4) = pp_Var23;\n    *(int *)&this_00->paddr_ = iVar9;\n    this_00->field_0x1a0 = bVar1 & 0xbf | 0x40;\n    if (-1 < iVar10 << 2) {\n      pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n      (*pcVar43)(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(puVar40 + 0x2aa7ac) + 0x7818);\nLAB_00188350:\n      this_01 = (Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec);\n      (*pcVar43)(this_01,0x69,*(int *)(puVar40 + 0x2aa7ac) + 0x78f8);\nLAB_00188368:\n      iVar9 = *(int *)(puVar40 + 0x2acab0) + 0x2a90;\n      Target::abi_pagesize(this_01);\n      if (*(int *)(this_01 + 0x198) == 7) {\n        puVar32 = *(undefined4 **)this_01;\n        puVar16 = *(undefined4 **)(this_01 + 4);\n        uVar38 = 7;\n        if (puVar32 != puVar16) {\n          do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);\n        }\n        return CONCAT44(puVar16,uVar38);\n      }\n      iVar10 = *(int *)(iVar9 + 0x2aa03c) + 0x59f0;\n      (**(code **)(iVar9 + 0x2aa04c))(iVar10,0x12bb,*(int *)(iVar9 + 0x2aa03c) + 0x6fd4);\n      piVar14 = (int *)(iVar10 + 4);\n      uVar11 = extraout_v1_01;\n      do {\n        puVar16 = (undefined4 *)piVar14[-1];\n        if (puVar16 != (undefined4 *)*piVar14) {\n          do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);\n        }\n        piVar14 = piVar14 + 3;\n      } while (piVar14 != (int *)(iVar10 + 0x160));\n      return (uint64_t)uVar11;\n    }\n    uVar38 = *(undefined4 *)&pOVar35->offset_;\n    *(int *)((int)&this_00->offset_ + 4) = (int)pOVar35->offset_;\n    *(undefined4 *)&this_00->offset_ = uVar38;\n    if (iStack_c4 == 0) {\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\nLAB_00187e40:\n      if (-1 < *(int *)(iStack_c8 + 0x20)) {\nLAB_001882b0:\n        iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n        goto LAB_001882b4;\n      }\n      iVar9 = *(int *)(iStack_c8 + 8);\n      uVar13 = *(uint *)(iStack_c8 + 0xc);\n      if (*(int *)(iStack_c8 + 0x20) << 1 < 0) {\n        iVar12 = *(int *)&this_00->vaddr_;\n        uVar17 = (uint)this_00->vaddr_;\n        iVar10 = iStack_c8;\nLAB_00187e60:\n        uVar24 = uVar11 - uVar17;\n        iVar30 = *(int *)(iVar10 + 0x10);\n        uVar28 = (uint)this_00->filesz_;\n        iVar29 = *(int *)&this_00->filesz_;\n        uVar13 = uVar24 + uVar13;\n        EVar25 = this_00->type_;\n        uVar20 = uVar13 + *(int *)(iVar10 + 0x14);\n        uVar39 = uVar28 + uVar11;\n        *(uint *)((int)&this_00->memsz_ + 4) = uVar20;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar39;\n        iVar9 = (uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30;\n        *(int *)&this_00->memsz_ = iVar9;\n        uVar11 = 0x6474e552;\n        *(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29;\n        if (EVar25 == 0x6474e552) {\n          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);\n          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;\n          iVar10 = *(int *)(this_01 + 8);\n          uVar20 = uVar17 + uVar20;\n          if (iVar10 == 0) goto LAB_00188368;\n          iVar29 = *(int *)(iVar10 + 0x5228);\n          iVar10 = *(int *)(iVar10 + 0x522c);\n          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;\n          if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }\n          uVar24 = uVar20 - 1;\n          uVar11 = -(uint)(-iVar10 != 0) - iVar29;\n          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;\n          puVar21 = &DAT_000012a8;\n          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;\n          EVar25 = this_00->type_;\n        }\njoined_r0x001880f8:\n        if (EVar25 != 7) {\n          return CONCAT44(7,uVar11);\n        }\n        uVar46 = maximum_alignment(this_00);\n        if (uVar46 == 0) {\n          uVar13 = *(uint *)&this_00->memsz_;\n          uVar11 = (uint)this_00->memsz_;\n          *(uint *)&this_00->memsz_ = uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n        }\n        else {\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }\n        return CONCAT44(uVar11,uVar13);\n      }\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)(iStack_c4 + 0x20)) goto LAB_001882b4;\n      iVar9 = *(int *)(iStack_c4 + 8);\n      uVar13 = *(uint *)(iStack_c4 + 0xc);\n      if (*(int *)(iStack_c4 + 0x20) << 1 < 0) {\n        iVar10 = *(int *)(iStack_c4 + 0x10);\n        uVar17 = (uint)this_00->vaddr_;\n        uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);\n        iVar12 = *(int *)&this_00->vaddr_;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;\n        *(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17);\n        iVar10 = iStack_c4;\n        if (iStack_c8 != 0) goto LAB_00187e40;\n        goto LAB_00187e60;\n      }\n    }\nLAB_001882cc:\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xcf,*(int *)(puVar40 + 0x2aa7ac) + 0x7894);\nLAB_001882e8:\n    puVar21 = (undefined1 *)0x1257;\n  }\n  else {\n    pp_Var23 = pOVar35->_vptr_Output_data;\n    if (pp_Var23[5] != *(_func_int_varargs **)(puVar40 + 0x2ac750)) {\n      iVar9 = (*pp_Var23[5])(pOVar35);\n      goto LAB_00187da8;\n    }\n    if (*(int *)&pOVar35[3].field_0x20 << 7 < 0) {\n      pp_Var23 = *(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4);\n      iVar9 = *(int *)&pOVar35[1].data_size_;\n      goto LAB_00187da8;\n    }\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,&DAT_0000107b,\n               *(int *)(puVar40 + 0x2aa7ac) + 0x6fe4);\nLAB_00188324:\n    puVar21 = &DAT_000012a8;\n  }\nLAB_001882ec:\n  do {\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + 0x59f0,puVar21,*(int *)(puVar40 + 0x2aa7ac) + 0x6ff4);\nLAB_00188304:\n    puVar21 = (undefined1 *)0x12b1;\n  } while( true );\n}" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::Output_segment::" identifier : : identifier : :) (function_declarator "set_section_list_addresses\n          (Output_segment *this,Layout *layout,bool reset,Output_data_list *pdl,uint64_t addr,\n          off_t *poff,off_t *pfoff,uint *pshndx,bool *in_tls)" identifier (parameter_list "(Output_segment *this,Layout *layout,bool reset,Output_data_list *pdl,uint64_t addr,\n          off_t *poff,off_t *pfoff,uint *pshndx,bool *in_tls)" ( (parameter_declaration "Output_segment *this" type_identifier (pointer_declarator "*this" * identifier)) , (parameter_declaration "Layout *layout" type_identifier (pointer_declarator "*layout" * identifier)) , (parameter_declaration "bool reset" primitive_type identifier) , (parameter_declaration "Output_data_list *pdl" type_identifier (pointer_declarator "*pdl" * identifier)) , (parameter_declaration "uint64_t addr" primitive_type identifier) , (parameter_declaration "off_t *poff" type_identifier (pointer_declarator "*poff" * identifier)) , (parameter_declaration "off_t *pfoff" type_identifier (pointer_declarator "*pfoff" * identifier)) , (parameter_declaration "uint *pshndx" type_identifier (pointer_declarator "*pshndx" * identifier)) , (parameter_declaration "bool *in_tls" primitive_type (pointer_declarator "*in_tls" * identifier)) ))) (compound_statement "{\n  byte bVar1;\n  bool bVar2;\n  longlong lVar3;\n  ulonglong uVar4;\n  off_t oVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  Output_data *pOVar8;\n  int iVar9;\n  int iVar10;\n  uint uVar11;\n  int iVar12;\n  uint uVar13;\n  int *piVar14;\n  Output_data *pOVar15;\n  undefined4 *puVar16;\n  undefined4 extraout_v1;\n  uint uVar17;\n  undefined4 extraout_v1_00;\n  uint extraout_v1_01;\n  Output_data *pOVar18;\n  Output_data *pOVar19;\n  Output_segment *this_00;\n  Target *this_01;\n  uint uVar20;\n  undefined1 *puVar21;\n  undefined3 in_register_00000018;\n  undefined *puVar22;\n  _func_int_varargs **pp_Var23;\n  uint uVar24;\n  Elf_Word EVar25;\n  Output_data *pOVar26;\n  Output_data *pOVar27;\n  uint uVar28;\n  int iVar29;\n  int iVar30;\n  Output_data *pOVar31;\n  undefined4 *puVar32;\n  Output_data *pOVar33;\n  pointer ppOVar34;\n  Output_data *pOVar35;\n  Output_data *pOVar36;\n  undefined *puVar37;\n  undefined4 uVar38;\n  uint uVar39;\n  undefined *puVar40;\n  _func_int_varargs *p_Var41;\n  Output_data *pOVar42;\n  code *pcVar43;\n  ulonglong uVar44;\n  undefined8 uVar45;\n  uint64_t uVar46;\n  int iStack_c8;\n  int iStack_c4;\n  Output_data *pOStack_c0;\n  Output_data *pOStack_bc;\n  pointer ppOStack_b8;\n  Output_data *pOStack_b4;\n  Output_data *pOStack_b0;\n  undefined *puStack_ac;\n  int iStack_a8;\n  code *pcStack_a4;\n  Output_data *local_90;\n  Output_data *local_8c;\n  Output_data *local_88;\n  Output_data *local_84;\n  Output_data *local_78;\n  Output_data *local_70;\n  Output_data *local_54;\n  \n  puVar40 = PTR_s_alize_xindex_004323b4;\n  pOVar18 = *(Output_data **)((int)poff + 4);\n  ppOVar34 = (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>).\n             _M_impl._M_start;\n  pOVar15 = *(Output_data **)poff;\n  pOVar36 = *(Output_data **)pfoff;\n  pOVar35 = *(Output_data **)((int)pfoff + 4);\n  local_78 = pOVar15;\n  local_54 = pOVar18;\n  if (ppOVar34 !=\n      (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish) {\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar7 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    pOVar8 = (Output_data *)(PTR_s_alize_xindex_004323b4 + -0x29ec);\n    pOVar42 = pOVar15;\n    pOVar31 = pOVar15;\n    pOVar33 = pOVar18;\nLAB_00187154:\n    iVar9 = (*(*ppOVar34)->_vptr_Output_data[7])(*ppOVar34,8);\n    iVar10 = (*(*ppOVar34)->_vptr_Output_data[8])();\n    if (CONCAT31(in_register_00000018,reset) != 0) {\n      pOVar19 = *ppOVar34;\n      bVar1 = pOVar19->field_0x20;\n      pOVar19->field_0x20 = bVar1 & 0x5f;\n      pOVar42 = (Output_data *)-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f);\n      if (pOVar42 == (Output_data *)0x0) {\n        pOVar19->field_0x20 = bVar1 & 0x1f;\n      }\n      (*pOVar19->_vptr_Output_data[0xf])();\n    }\n    piVar14 = (int *)PTR_parameters_00432be0;\n    puVar37 = PTR_parameters_00432be0;\n    if (-1 < *(int *)&(*ppOVar34)->field_0x20) {\n      uVar11 = (*(*ppOVar34)->_vptr_Output_data[3])();\n      uVar4 = CONCAT44(uVar11,pOVar42);\n      uVar44 = CONCAT44(uVar11,pOVar42);\n      if (iVar10 == 0) {\n        if (*in_tls == false) goto LAB_00187254;\n        uVar44 = maximum_alignment(layout->tls_segment_);\n        if (uVar4 < uVar44) {\n          *in_tls = false;\n        }\n        else {\n          *in_tls = false;\n          uVar44 = uVar4;\n        }\n        piVar14 = (int *)PTR_parameters_00432be0;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar12 != 0) goto LAB_00187604;\nLAB_00187268:\n        if (pOVar31 == pOVar36) goto LAB_001878dc;\n        goto LAB_00187270;\n      }\n      uVar44 = uVar4;\n      if (*in_tls != false) goto LAB_00187254;\n      if (layout->tls_segment_ == (Output_segment *)0x0) {\n        uVar38 = 0x11c4;\n        goto LAB_00187b08;\n      }\n      uVar44 = maximum_alignment(layout->tls_segment_);\n      uVar13 = (uint)(uVar44 >> 0x20);\n      if (uVar11 <= uVar13) {\n        local_70 = pOVar42;\n        if (uVar11 == uVar13) goto LAB_00187bac;\n        goto LAB_0018723c;\n      }\nLAB_00187bbc:\n      uVar38 = 0x11c6;\n      goto LAB_00187b08;\n    }\n    iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n    if (iVar12 == 0) {\n      pOVar42 = *ppOVar34;\n      if (*(int *)&pOVar42->field_0x20 < 0) {\n        uVar11 = *(uint *)&pOVar42->address_;\n        lVar3 = addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n        pOVar19 = (Output_data *)lVar3;\n        uVar13 = (uint)((ulonglong)lVar3 >> 0x20);\n        pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n        if ((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))) {\n          uVar38 = 0x1215;\n          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;\n          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);\n          pOVar42 = *ppOVar34;\n          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);\n          local_70 = *(Output_data **)&pOVar42->address_;\n          if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }\n        }\n        else if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }\n        uVar44 = CONCAT44(uVar13,pOVar42);\n        if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n        bVar1 = pOVar42->field_0x20;\n        *(Output_data **)&pOVar42->offset_ = pOVar36;\n        *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n        pOVar42->field_0x20 = bVar1 & 0xdf | 0x20;\n        pOVar19 = pOVar35;\n        pOVar26 = pOVar36;\n        if (-1 < *(int *)&pOVar42->field_0x20 << 1) {\n          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n          iVar12 = *(int *)&pOVar42->field_0x20;\n          local_70 = pOVar42;\n          goto joined_r0x001878b8;\n        }\nLAB_0018736c:\n        pOVar36 = pOVar26;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14);\n        pOVar35 = pOVar19;\n        if (iVar12 == 0) {\nLAB_00187410:\n          pOVar42 = *ppOVar34;\n        }\n        else {\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }\n        if (iVar10 == 0) {\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }\n        }\n        else {\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }\nLAB_00187b5c:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);\nLAB_00187b74:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)\n        ;\nLAB_00187b94:\n        do {\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        } while( true );\n      }\nLAB_00187bd4:\n      puVar22 = PTR_s_alize_xindex_004323b4 + 0x7850;\n      (*(code *)PTR_do_gold_unreachable_004323c4)\n                (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,puVar22);\n    }\n    else {\n      pOVar42 = *ppOVar34;\n      puVar22 = PTR_s_alize_xindex_004323b4;\n      if (*(int *)&pOVar42->field_0x20 << 2 < 0) {\n        pOVar31 = *(Output_data **)&pOVar42->offset_;\n        pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);\n        pOVar19 = pOVar33;\n        pOVar26 = pOVar31;\n        goto LAB_0018736c;\n      }\n    }\n    uVar11 = 0xe3;\n    pcVar43 = set_offset;\n    this_00 = (Output_segment *)(PTR_s_alize_xindex_004323b4 + -0x4fe0);\n    puVar40 = PTR_do_gold_unreachable_004323c4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)(this_00,0xe3,puVar22 + 0x7818);\n    pOStack_c0 = pOVar31;\n    pOStack_bc = pOVar33;\n    ppOStack_b8 = ppOVar34;\n    pOStack_b4 = pOVar35;\n    pOStack_b0 = pOVar36;\n    puStack_ac = puVar37;\n    iStack_a8 = iVar9;\n    pcStack_a4 = pcVar43;\n    if (this_00->type_ == 1) {\n      puVar21 = (undefined1 *)0x1255;\n      goto LAB_001882ec;\n    }\n    if (*(int *)&this_00->field_0x1a0 << 1 < 0) goto LAB_001882e8;\n    ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n               _M_start;\n    if (this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n        _M_finish != ppOVar34) {\n      pOVar35 = (Output_data *)0x0;\n      iStack_c4 = 0;\n      iStack_c8 = 0;\n      goto LAB_00187c80;\n    }\n    puVar21 = (undefined1 *)0x125f;\n    if (uVar11 == 0) {\n      uVar11 = (byte)this_00->field_0x1a0 & 0xffffffbf | 0x40;\n      *(undefined4 *)((int)&this_00->vaddr_ + 4) = 0;\n      *(undefined4 *)&this_00->vaddr_ = 0;\n      *(undefined4 *)((int)&this_00->paddr_ + 4) = 0;\n      *(undefined4 *)&this_00->paddr_ = 0;\n      this_00->field_0x1a0 = (char)uVar11;\n      *(undefined4 *)((int)&this_00->memsz_ + 4) = 0;\n      *(undefined4 *)&this_00->memsz_ = 0;\n      *(undefined4 *)((int)&this_00->min_p_align_ + 4) = 0;\n      *(undefined4 *)&this_00->min_p_align_ = 0;\n      *(undefined4 *)((int)&this_00->offset_ + 4) = 0;\n      *(undefined4 *)&this_00->offset_ = 0;\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\n      return CONCAT44(uVar11,1);\n    }\n    goto LAB_001882ec;\n  }\nLAB_00187518:\n  *(Output_data **)poff = local_78;\n  *(Output_data **)((int)poff + 4) = local_54;\n  *(Output_data **)pfoff = pOVar36;\n  *(Output_data **)((int)pfoff + 4) = pOVar35;\n  return addr;\ncode_r0x00187434:\n  pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n  pOVar31 = (Output_data *)\n            ((int)&pOVar31->_vptr_Output_data +\n            (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n  pOVar35 = pOVar19;\n  pOVar36 = pOVar31;\nLAB_00187458:\n  if (((int)local_78 < (int)pOVar31) || ((pOVar31 == local_78 && (local_54 < pOVar19)))) {\n    local_78 = pOVar31;\n    local_54 = pOVar19;\n  }\n  iVar9 = (*pOVar42->_vptr_Output_data[6])(pOVar42);\n  if (iVar9 != 0) {\n    pOVar42 = *ppOVar34;\n    if (pOVar42->_vptr_Output_data[0xc] == (_func_int_varargs *)PTR_do_set_out_shndx_00432ea4) {\n      uVar11 = (uint)pOVar42[2].data_size_;\n      if ((uVar11 != 0xffffffff) && (*pshndx != uVar11)) {\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  );\n        local_78 = pOVar15;\n        local_54 = pOVar18;\n        goto LAB_00187518;\n      }\n      *(uint *)((int)&pOVar42[2].data_size_ + 4) = *pshndx;\n    }\n    else {\n      (*pOVar42->_vptr_Output_data[0xc])();\n    }\n    *pshndx = *pshndx + 1;\n  }\n  ppOVar34 = ppOVar34 + 1;\n  pOVar42 = local_54;\n  pOVar33 = pOVar19;\n  if ((pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish == ppOVar34) goto code_r0x001874e4;\n  goto LAB_00187154;\ncode_r0x001874e4:\n  addr = addr + CONCAT44((undefined *)\n                         ((int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15)),(Output_data *)((int)local_54 - (int)pOVar18));\n  goto LAB_00187518;\nLAB_001878c0:\n  (*(code *)PTR_do_gold_unreachable_004323c4)\n            (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,PTR_s_alize_xindex_004323b4 + 0x751c);\nLAB_001878dc:\n  local_70 = (Output_data *)uVar44;\n  if (pOVar33 == pOVar35) {\n    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;\n    pOVar42 = pOVar35;\n    pOVar19 = pOVar36;\n  }\n  else {\nLAB_00187270:\n    local_70 = (Output_data *)uVar44;\n    if (iVar9 == 0) {\n      uVar38 = 0x11df;\n      goto LAB_00187b08;\n    }\n    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;\n    pOVar42 = pOVar35;\n    pOVar19 = pOVar36;\n  }\n  local_70 = (Output_data *)uVar44;\n  if (uVar11 != 0) {\n    lVar3 = uVar44 + CONCAT44((undefined *)\n                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)),\n                              &pOVar33[-1].field_0x27);\n    pOVar33 = (Output_data *)((uint)lVar3 & -(int)local_70);\n    pOVar31 = (Output_data *)\n              ((uint)((ulonglong)lVar3 >> 0x20) &\n              -(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20));\n  }\n  pOVar35 = pOVar33;\n  pOVar36 = pOVar31;\n  if ((iVar10 == 0) && (pOVar35 = pOVar42, pOVar36 = pOVar19, iVar9 == 0)) {\n    pOVar35 = pOVar33;\n    pOVar36 = pOVar31;\n  }\n  pOVar42 = *ppOVar34;\n  uVar44 = CONCAT44(pOVar42,local_70);\n  if (*(int *)&pOVar42->field_0x20 < 0) goto LAB_00187b74;\n  bVar1 = pOVar42->field_0x20;\n  pOVar42->address_ =\n       addr + CONCAT44((undefined *)\n                       ((int)pOVar31 +\n                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n  pOVar42->field_0x20 = bVar1 & 0x7f | 0x80;\n  if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n  *(Output_data **)&pOVar42->offset_ = pOVar36;\n  *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n  pOVar42->field_0x20 = bVar1 & 0x5f | 0xa0;\n  pOVar19 = pOVar35;\n  pOVar26 = pOVar36;\n  if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto LAB_0018736c;\n  (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n  iVar12 = *(int *)&pOVar42->field_0x20;\njoined_r0x001878b8:\n  pOVar19 = pOVar35;\n  pOVar26 = pOVar36;\n  if (iVar12 << 1 < 0) goto LAB_0018736c;\n  goto LAB_001878c0;\nLAB_00187c80:\n  do {\n    pOVar36 = *ppOVar34;\n    if (pOVar35 == (Output_data *)0x0) {\nLAB_00187f58:\n      pOVar35 = pOVar36;\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)&pOVar35->field_0x20) goto LAB_001882b0;\n      uVar17 = *(uint *)&pOVar35->address_;\n      uVar20 = (uint)pOVar35->address_;\n      if ((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))) goto LAB_00187f58;\n      if ((uVar17 == uVar13) && (uVar20 == uVar24)) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;\n        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;\n      }\n    }\n    iVar9 = (*pOVar36->_vptr_Output_data[6])();\n    if ((iVar9 == 0) ||\n       (iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8)) {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c4;\n      piVar14 = &iStack_c4;\n      if (iStack_c4 != 0) goto LAB_00187d18;\nLAB_00187f0c:\n      *piVar14 = (int)pOVar36;\n    }\n    else {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c8;\n      piVar14 = &iStack_c8;\n      if (iStack_c8 == 0) goto LAB_00187f0c;\nLAB_00187d18:\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)(iVar10 + 0x20)) goto LAB_001882b0;\n      uVar17 = *(uint *)(iVar10 + 8);\n      if ((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))\n      goto LAB_00187f0c;\n      if ((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;\n        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;\n        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }\n      }\n    }\n    ppOVar34 = ppOVar34 + 1;\n  } while (this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n           _M_finish != ppOVar34);\n  iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n  if (-1 < *(int *)&pOVar35->field_0x20) {\nLAB_001882b4:\n    (**(code **)(puVar40 + 0x2aa7bc))(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xc5,iVar9 + 0x7850);\n    goto LAB_001882cc;\n  }\n  uVar38 = *(undefined4 *)&pOVar35->address_;\n  p_Var41 = pOVar35->_vptr_Output_data[4];\n  *(int *)((int)&this_00->vaddr_ + 4) = (int)pOVar35->address_;\n  *(undefined4 *)&this_00->vaddr_ = uVar38;\n  iVar9 = (*p_Var41)(pOVar35);\n  if (iVar9 == 0) {\n    pp_Var23 = *(_func_int_varargs ***)((int)&this_00->vaddr_ + 4);\n    iVar9 = *(int *)&this_00->vaddr_;\nLAB_00187da8:\n    iVar10 = *(int *)&pOVar35->field_0x20;\n    bVar1 = this_00->field_0x1a0;\n    *(_func_int_varargs ***)((int)&this_00->paddr_ + 4) = pp_Var23;\n    *(int *)&this_00->paddr_ = iVar9;\n    this_00->field_0x1a0 = bVar1 & 0xbf | 0x40;\n    if (-1 < iVar10 << 2) {\n      pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n      (*pcVar43)(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(puVar40 + 0x2aa7ac) + 0x7818);\nLAB_00188350:\n      this_01 = (Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec);\n      (*pcVar43)(this_01,0x69,*(int *)(puVar40 + 0x2aa7ac) + 0x78f8);\nLAB_00188368:\n      iVar9 = *(int *)(puVar40 + 0x2acab0) + 0x2a90;\n      Target::abi_pagesize(this_01);\n      if (*(int *)(this_01 + 0x198) == 7) {\n        puVar32 = *(undefined4 **)this_01;\n        puVar16 = *(undefined4 **)(this_01 + 4);\n        uVar38 = 7;\n        if (puVar32 != puVar16) {\n          do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);\n        }\n        return CONCAT44(puVar16,uVar38);\n      }\n      iVar10 = *(int *)(iVar9 + 0x2aa03c) + 0x59f0;\n      (**(code **)(iVar9 + 0x2aa04c))(iVar10,0x12bb,*(int *)(iVar9 + 0x2aa03c) + 0x6fd4);\n      piVar14 = (int *)(iVar10 + 4);\n      uVar11 = extraout_v1_01;\n      do {\n        puVar16 = (undefined4 *)piVar14[-1];\n        if (puVar16 != (undefined4 *)*piVar14) {\n          do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);\n        }\n        piVar14 = piVar14 + 3;\n      } while (piVar14 != (int *)(iVar10 + 0x160));\n      return (uint64_t)uVar11;\n    }\n    uVar38 = *(undefined4 *)&pOVar35->offset_;\n    *(int *)((int)&this_00->offset_ + 4) = (int)pOVar35->offset_;\n    *(undefined4 *)&this_00->offset_ = uVar38;\n    if (iStack_c4 == 0) {\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\nLAB_00187e40:\n      if (-1 < *(int *)(iStack_c8 + 0x20)) {\nLAB_001882b0:\n        iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n        goto LAB_001882b4;\n      }\n      iVar9 = *(int *)(iStack_c8 + 8);\n      uVar13 = *(uint *)(iStack_c8 + 0xc);\n      if (*(int *)(iStack_c8 + 0x20) << 1 < 0) {\n        iVar12 = *(int *)&this_00->vaddr_;\n        uVar17 = (uint)this_00->vaddr_;\n        iVar10 = iStack_c8;\nLAB_00187e60:\n        uVar24 = uVar11 - uVar17;\n        iVar30 = *(int *)(iVar10 + 0x10);\n        uVar28 = (uint)this_00->filesz_;\n        iVar29 = *(int *)&this_00->filesz_;\n        uVar13 = uVar24 + uVar13;\n        EVar25 = this_00->type_;\n        uVar20 = uVar13 + *(int *)(iVar10 + 0x14);\n        uVar39 = uVar28 + uVar11;\n        *(uint *)((int)&this_00->memsz_ + 4) = uVar20;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar39;\n        iVar9 = (uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30;\n        *(int *)&this_00->memsz_ = iVar9;\n        uVar11 = 0x6474e552;\n        *(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29;\n        if (EVar25 == 0x6474e552) {\n          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);\n          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;\n          iVar10 = *(int *)(this_01 + 8);\n          uVar20 = uVar17 + uVar20;\n          if (iVar10 == 0) goto LAB_00188368;\n          iVar29 = *(int *)(iVar10 + 0x5228);\n          iVar10 = *(int *)(iVar10 + 0x522c);\n          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;\n          if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }\n          uVar24 = uVar20 - 1;\n          uVar11 = -(uint)(-iVar10 != 0) - iVar29;\n          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;\n          puVar21 = &DAT_000012a8;\n          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;\n          EVar25 = this_00->type_;\n        }\njoined_r0x001880f8:\n        if (EVar25 != 7) {\n          return CONCAT44(7,uVar11);\n        }\n        uVar46 = maximum_alignment(this_00);\n        if (uVar46 == 0) {\n          uVar13 = *(uint *)&this_00->memsz_;\n          uVar11 = (uint)this_00->memsz_;\n          *(uint *)&this_00->memsz_ = uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n        }\n        else {\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }\n        return CONCAT44(uVar11,uVar13);\n      }\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)(iStack_c4 + 0x20)) goto LAB_001882b4;\n      iVar9 = *(int *)(iStack_c4 + 8);\n      uVar13 = *(uint *)(iStack_c4 + 0xc);\n      if (*(int *)(iStack_c4 + 0x20) << 1 < 0) {\n        iVar10 = *(int *)(iStack_c4 + 0x10);\n        uVar17 = (uint)this_00->vaddr_;\n        uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);\n        iVar12 = *(int *)&this_00->vaddr_;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;\n        *(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17);\n        iVar10 = iStack_c4;\n        if (iStack_c8 != 0) goto LAB_00187e40;\n        goto LAB_00187e60;\n      }\n    }\nLAB_001882cc:\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xcf,*(int *)(puVar40 + 0x2aa7ac) + 0x7894);\nLAB_001882e8:\n    puVar21 = (undefined1 *)0x1257;\n  }\n  else {\n    pp_Var23 = pOVar35->_vptr_Output_data;\n    if (pp_Var23[5] != *(_func_int_varargs **)(puVar40 + 0x2ac750)) {\n      iVar9 = (*pp_Var23[5])(pOVar35);\n      goto LAB_00187da8;\n    }\n    if (*(int *)&pOVar35[3].field_0x20 << 7 < 0) {\n      pp_Var23 = *(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4);\n      iVar9 = *(int *)&pOVar35[1].data_size_;\n      goto LAB_00187da8;\n    }\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,&DAT_0000107b,\n               *(int *)(puVar40 + 0x2aa7ac) + 0x6fe4);\nLAB_00188324:\n    puVar21 = &DAT_000012a8;\n  }\nLAB_001882ec:\n  do {\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + 0x59f0,puVar21,*(int *)(puVar40 + 0x2aa7ac) + 0x6ff4);\nLAB_00188304:\n    puVar21 = (undefined1 *)0x12b1;\n  } while( true );\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "bool bVar2;" primitive_type identifier ;) (declaration "longlong lVar3;" type_identifier identifier ;) (declaration "ulonglong uVar4;" type_identifier identifier ;) (declaration "off_t oVar5;" type_identifier identifier ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "undefined *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "Output_data *pOVar8;" type_identifier (pointer_declarator "*pOVar8" * identifier) ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "Output_data *pOVar15;" type_identifier (pointer_declarator "*pOVar15" * identifier) ;) (declaration "undefined4 *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "undefined4 extraout_v1;" type_identifier identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_00;" type_identifier identifier ;) (declaration "uint extraout_v1_01;" type_identifier identifier ;) (declaration "Output_data *pOVar18;" type_identifier (pointer_declarator "*pOVar18" * identifier) ;) (declaration "Output_data *pOVar19;" type_identifier (pointer_declarator "*pOVar19" * identifier) ;) (declaration "Output_segment *this_00;" type_identifier (pointer_declarator "*this_00" * identifier) ;) (declaration "Target *this_01;" type_identifier (pointer_declarator "*this_01" * identifier) ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "undefined1 *puVar21;" type_identifier (pointer_declarator "*puVar21" * identifier) ;) (declaration "undefined3 in_register_00000018;" type_identifier identifier ;) (declaration "undefined *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "_func_int_varargs **pp_Var23;" type_identifier (pointer_declarator "**pp_Var23" * (pointer_declarator "*pp_Var23" * identifier)) ;) (declaration "uint uVar24;" type_identifier identifier ;) (declaration "Elf_Word EVar25;" type_identifier identifier ;) (declaration "Output_data *pOVar26;" type_identifier (pointer_declarator "*pOVar26" * identifier) ;) (declaration "Output_data *pOVar27;" type_identifier (pointer_declarator "*pOVar27" * identifier) ;) (declaration "uint uVar28;" type_identifier identifier ;) (declaration "int iVar29;" primitive_type identifier ;) (declaration "int iVar30;" primitive_type identifier ;) (declaration "Output_data *pOVar31;" type_identifier (pointer_declarator "*pOVar31" * identifier) ;) (declaration "undefined4 *puVar32;" type_identifier (pointer_declarator "*puVar32" * identifier) ;) (declaration "Output_data *pOVar33;" type_identifier (pointer_declarator "*pOVar33" * identifier) ;) (declaration "pointer ppOVar34;" type_identifier identifier ;) (declaration "Output_data *pOVar35;" type_identifier (pointer_declarator "*pOVar35" * identifier) ;) (declaration "Output_data *pOVar36;" type_identifier (pointer_declarator "*pOVar36" * identifier) ;) (declaration "undefined *puVar37;" type_identifier (pointer_declarator "*puVar37" * identifier) ;) (declaration "undefined4 uVar38;" type_identifier identifier ;) (declaration "uint uVar39;" type_identifier identifier ;) (declaration "undefined *puVar40;" type_identifier (pointer_declarator "*puVar40" * identifier) ;) (declaration "_func_int_varargs *p_Var41;" type_identifier (pointer_declarator "*p_Var41" * identifier) ;) (declaration "Output_data *pOVar42;" type_identifier (pointer_declarator "*pOVar42" * identifier) ;) (declaration "code *pcVar43;" type_identifier (pointer_declarator "*pcVar43" * identifier) ;) (declaration "ulonglong uVar44;" type_identifier identifier ;) (declaration "undefined8 uVar45;" type_identifier identifier ;) (declaration "uint64_t uVar46;" primitive_type identifier ;) (declaration "int iStack_c8;" primitive_type identifier ;) (declaration "int iStack_c4;" primitive_type identifier ;) (declaration "Output_data *pOStack_c0;" type_identifier (pointer_declarator "*pOStack_c0" * identifier) ;) (declaration "Output_data *pOStack_bc;" type_identifier (pointer_declarator "*pOStack_bc" * identifier) ;) (declaration "pointer ppOStack_b8;" type_identifier identifier ;) (declaration "Output_data *pOStack_b4;" type_identifier (pointer_declarator "*pOStack_b4" * identifier) ;) (declaration "Output_data *pOStack_b0;" type_identifier (pointer_declarator "*pOStack_b0" * identifier) ;) (declaration "undefined *puStack_ac;" type_identifier (pointer_declarator "*puStack_ac" * identifier) ;) (declaration "int iStack_a8;" primitive_type identifier ;) (declaration "code *pcStack_a4;" type_identifier (pointer_declarator "*pcStack_a4" * identifier) ;) (declaration "Output_data *local_90;" type_identifier (pointer_declarator "*local_90" * identifier) ;) (declaration "Output_data *local_8c;" type_identifier (pointer_declarator "*local_8c" * identifier) ;) (declaration "Output_data *local_88;" type_identifier (pointer_declarator "*local_88" * identifier) ;) (declaration "Output_data *local_84;" type_identifier (pointer_declarator "*local_84" * identifier) ;) (declaration "Output_data *local_78;" type_identifier (pointer_declarator "*local_78" * identifier) ;) (declaration "Output_data *local_70;" type_identifier (pointer_declarator "*local_70" * identifier) ;) (declaration "Output_data *local_54;" type_identifier (pointer_declarator "*local_54" * identifier) ;) (expression_statement "puVar40 = PTR_s_alize_xindex_004323b4;" (assignment_expression "puVar40 = PTR_s_alize_xindex_004323b4" identifier = identifier) ;) (expression_statement "pOVar18 = *(Output_data **)((int)poff + 4);" (assignment_expression "pOVar18 = *(Output_data **)((int)poff + 4)" identifier = (pointer_expression "*(Output_data **)((int)poff + 4)" * (cast_expression "(Output_data **)((int)poff + 4)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)poff + 4)" ( (binary_expression "(int)poff + 4" (cast_expression "(int)poff" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "ppOVar34 = (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>).\n             _M_impl._M_start;" (assignment_expression "ppOVar34 = (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>).\n             _M_impl._M_start" identifier = (field_expression "(pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>).\n             _M_impl._M_start" (field_expression "(pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>).\n             _M_impl" (parenthesized_expression "(pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)" ( (ERROR "pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::" (comma_expression "pdl->super__Vector_base<gold::Output_data*,_std" (binary_expression "pdl->super__Vector_base<gold::Output_data*" (binary_expression "pdl->super__Vector_base<gold" (field_expression "pdl->super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::Output_data" : : identifier) * identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (binary_expression "Output_data*>_>" (binary_expression "Output_data*>_" identifier * (ERROR ">" >) identifier) > identifier) )) . field_identifier) . field_identifier)) ;) (expression_statement "pOVar15 = *(Output_data **)poff;" (assignment_expression "pOVar15 = *(Output_data **)poff" identifier = (pointer_expression "*(Output_data **)poff" * (cast_expression "(Output_data **)poff" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pOVar36 = *(Output_data **)pfoff;" (assignment_expression "pOVar36 = *(Output_data **)pfoff" identifier = (pointer_expression "*(Output_data **)pfoff" * (cast_expression "(Output_data **)pfoff" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pOVar35 = *(Output_data **)((int)pfoff + 4);" (assignment_expression "pOVar35 = *(Output_data **)((int)pfoff + 4)" identifier = (pointer_expression "*(Output_data **)((int)pfoff + 4)" * (cast_expression "(Output_data **)((int)pfoff + 4)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)pfoff + 4)" ( (binary_expression "(int)pfoff + 4" (cast_expression "(int)pfoff" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "local_78 = pOVar15;" (assignment_expression "local_78 = pOVar15" identifier = identifier) ;) (expression_statement "local_54 = pOVar18;" (assignment_expression "local_54 = pOVar18" identifier = identifier) ;) (if_statement "if (ppOVar34 !=\n      (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish) {\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar7 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    pOVar8 = (Output_data *)(PTR_s_alize_xindex_004323b4 + -0x29ec);\n    pOVar42 = pOVar15;\n    pOVar31 = pOVar15;\n    pOVar33 = pOVar18;\nLAB_00187154:\n    iVar9 = (*(*ppOVar34)->_vptr_Output_data[7])(*ppOVar34,8);\n    iVar10 = (*(*ppOVar34)->_vptr_Output_data[8])();\n    if (CONCAT31(in_register_00000018,reset) != 0) {\n      pOVar19 = *ppOVar34;\n      bVar1 = pOVar19->field_0x20;\n      pOVar19->field_0x20 = bVar1 & 0x5f;\n      pOVar42 = (Output_data *)-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f);\n      if (pOVar42 == (Output_data *)0x0) {\n        pOVar19->field_0x20 = bVar1 & 0x1f;\n      }\n      (*pOVar19->_vptr_Output_data[0xf])();\n    }\n    piVar14 = (int *)PTR_parameters_00432be0;\n    puVar37 = PTR_parameters_00432be0;\n    if (-1 < *(int *)&(*ppOVar34)->field_0x20) {\n      uVar11 = (*(*ppOVar34)->_vptr_Output_data[3])();\n      uVar4 = CONCAT44(uVar11,pOVar42);\n      uVar44 = CONCAT44(uVar11,pOVar42);\n      if (iVar10 == 0) {\n        if (*in_tls == false) goto LAB_00187254;\n        uVar44 = maximum_alignment(layout->tls_segment_);\n        if (uVar4 < uVar44) {\n          *in_tls = false;\n        }\n        else {\n          *in_tls = false;\n          uVar44 = uVar4;\n        }\n        piVar14 = (int *)PTR_parameters_00432be0;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar12 != 0) goto LAB_00187604;\nLAB_00187268:\n        if (pOVar31 == pOVar36) goto LAB_001878dc;\n        goto LAB_00187270;\n      }\n      uVar44 = uVar4;\n      if (*in_tls != false) goto LAB_00187254;\n      if (layout->tls_segment_ == (Output_segment *)0x0) {\n        uVar38 = 0x11c4;\n        goto LAB_00187b08;\n      }\n      uVar44 = maximum_alignment(layout->tls_segment_);\n      uVar13 = (uint)(uVar44 >> 0x20);\n      if (uVar11 <= uVar13) {\n        local_70 = pOVar42;\n        if (uVar11 == uVar13) goto LAB_00187bac;\n        goto LAB_0018723c;\n      }\nLAB_00187bbc:\n      uVar38 = 0x11c6;\n      goto LAB_00187b08;\n    }\n    iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n    if (iVar12 == 0) {\n      pOVar42 = *ppOVar34;\n      if (*(int *)&pOVar42->field_0x20 < 0) {\n        uVar11 = *(uint *)&pOVar42->address_;\n        lVar3 = addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n        pOVar19 = (Output_data *)lVar3;\n        uVar13 = (uint)((ulonglong)lVar3 >> 0x20);\n        pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n        if ((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))) {\n          uVar38 = 0x1215;\n          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;\n          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);\n          pOVar42 = *ppOVar34;\n          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);\n          local_70 = *(Output_data **)&pOVar42->address_;\n          if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }\n        }\n        else if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }\n        uVar44 = CONCAT44(uVar13,pOVar42);\n        if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n        bVar1 = pOVar42->field_0x20;\n        *(Output_data **)&pOVar42->offset_ = pOVar36;\n        *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n        pOVar42->field_0x20 = bVar1 & 0xdf | 0x20;\n        pOVar19 = pOVar35;\n        pOVar26 = pOVar36;\n        if (-1 < *(int *)&pOVar42->field_0x20 << 1) {\n          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n          iVar12 = *(int *)&pOVar42->field_0x20;\n          local_70 = pOVar42;\n          goto joined_r0x001878b8;\n        }\nLAB_0018736c:\n        pOVar36 = pOVar26;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14);\n        pOVar35 = pOVar19;\n        if (iVar12 == 0) {\nLAB_00187410:\n          pOVar42 = *ppOVar34;\n        }\n        else {\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }\n        if (iVar10 == 0) {\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }\n        }\n        else {\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }\nLAB_00187b5c:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);\nLAB_00187b74:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)\n        ;\nLAB_00187b94:\n        do {\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        } while( true );\n      }\nLAB_00187bd4:\n      puVar22 = PTR_s_alize_xindex_004323b4 + 0x7850;\n      (*(code *)PTR_do_gold_unreachable_004323c4)\n                (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,puVar22);\n    }\n    else {\n      pOVar42 = *ppOVar34;\n      puVar22 = PTR_s_alize_xindex_004323b4;\n      if (*(int *)&pOVar42->field_0x20 << 2 < 0) {\n        pOVar31 = *(Output_data **)&pOVar42->offset_;\n        pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);\n        pOVar19 = pOVar33;\n        pOVar26 = pOVar31;\n        goto LAB_0018736c;\n      }\n    }\n    uVar11 = 0xe3;\n    pcVar43 = set_offset;\n    this_00 = (Output_segment *)(PTR_s_alize_xindex_004323b4 + -0x4fe0);\n    puVar40 = PTR_do_gold_unreachable_004323c4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)(this_00,0xe3,puVar22 + 0x7818);\n    pOStack_c0 = pOVar31;\n    pOStack_bc = pOVar33;\n    ppOStack_b8 = ppOVar34;\n    pOStack_b4 = pOVar35;\n    pOStack_b0 = pOVar36;\n    puStack_ac = puVar37;\n    iStack_a8 = iVar9;\n    pcStack_a4 = pcVar43;\n    if (this_00->type_ == 1) {\n      puVar21 = (undefined1 *)0x1255;\n      goto LAB_001882ec;\n    }\n    if (*(int *)&this_00->field_0x1a0 << 1 < 0) goto LAB_001882e8;\n    ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n               _M_start;\n    if (this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n        _M_finish != ppOVar34) {\n      pOVar35 = (Output_data *)0x0;\n      iStack_c4 = 0;\n      iStack_c8 = 0;\n      goto LAB_00187c80;\n    }\n    puVar21 = (undefined1 *)0x125f;\n    if (uVar11 == 0) {\n      uVar11 = (byte)this_00->field_0x1a0 & 0xffffffbf | 0x40;\n      *(undefined4 *)((int)&this_00->vaddr_ + 4) = 0;\n      *(undefined4 *)&this_00->vaddr_ = 0;\n      *(undefined4 *)((int)&this_00->paddr_ + 4) = 0;\n      *(undefined4 *)&this_00->paddr_ = 0;\n      this_00->field_0x1a0 = (char)uVar11;\n      *(undefined4 *)((int)&this_00->memsz_ + 4) = 0;\n      *(undefined4 *)&this_00->memsz_ = 0;\n      *(undefined4 *)((int)&this_00->min_p_align_ + 4) = 0;\n      *(undefined4 *)&this_00->min_p_align_ = 0;\n      *(undefined4 *)((int)&this_00->offset_ + 4) = 0;\n      *(undefined4 *)&this_00->offset_ = 0;\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\n      return CONCAT44(uVar11,1);\n    }\n    goto LAB_001882ec;\n  }" if (parenthesized_expression "(ppOVar34 !=\n      (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish)" ( (binary_expression "ppOVar34 !=\n      (pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish" identifier != (field_expression "(pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish" (field_expression "(pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl" (parenthesized_expression "(pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)" ( (binary_expression "pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>" (binary_expression "pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_" (binary_expression "pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold" (binary_expression "pdl->super__Vector_base<gold::Output_data*,_std" (binary_expression "pdl->super__Vector_base<gold" (field_expression "pdl->super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::Output_data" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_data" : : identifier) * (ERROR ">" >) identifier) > identifier) )) . field_identifier) . field_identifier)) )) (compound_statement "{\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar7 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    pOVar8 = (Output_data *)(PTR_s_alize_xindex_004323b4 + -0x29ec);\n    pOVar42 = pOVar15;\n    pOVar31 = pOVar15;\n    pOVar33 = pOVar18;\nLAB_00187154:\n    iVar9 = (*(*ppOVar34)->_vptr_Output_data[7])(*ppOVar34,8);\n    iVar10 = (*(*ppOVar34)->_vptr_Output_data[8])();\n    if (CONCAT31(in_register_00000018,reset) != 0) {\n      pOVar19 = *ppOVar34;\n      bVar1 = pOVar19->field_0x20;\n      pOVar19->field_0x20 = bVar1 & 0x5f;\n      pOVar42 = (Output_data *)-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f);\n      if (pOVar42 == (Output_data *)0x0) {\n        pOVar19->field_0x20 = bVar1 & 0x1f;\n      }\n      (*pOVar19->_vptr_Output_data[0xf])();\n    }\n    piVar14 = (int *)PTR_parameters_00432be0;\n    puVar37 = PTR_parameters_00432be0;\n    if (-1 < *(int *)&(*ppOVar34)->field_0x20) {\n      uVar11 = (*(*ppOVar34)->_vptr_Output_data[3])();\n      uVar4 = CONCAT44(uVar11,pOVar42);\n      uVar44 = CONCAT44(uVar11,pOVar42);\n      if (iVar10 == 0) {\n        if (*in_tls == false) goto LAB_00187254;\n        uVar44 = maximum_alignment(layout->tls_segment_);\n        if (uVar4 < uVar44) {\n          *in_tls = false;\n        }\n        else {\n          *in_tls = false;\n          uVar44 = uVar4;\n        }\n        piVar14 = (int *)PTR_parameters_00432be0;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar12 != 0) goto LAB_00187604;\nLAB_00187268:\n        if (pOVar31 == pOVar36) goto LAB_001878dc;\n        goto LAB_00187270;\n      }\n      uVar44 = uVar4;\n      if (*in_tls != false) goto LAB_00187254;\n      if (layout->tls_segment_ == (Output_segment *)0x0) {\n        uVar38 = 0x11c4;\n        goto LAB_00187b08;\n      }\n      uVar44 = maximum_alignment(layout->tls_segment_);\n      uVar13 = (uint)(uVar44 >> 0x20);\n      if (uVar11 <= uVar13) {\n        local_70 = pOVar42;\n        if (uVar11 == uVar13) goto LAB_00187bac;\n        goto LAB_0018723c;\n      }\nLAB_00187bbc:\n      uVar38 = 0x11c6;\n      goto LAB_00187b08;\n    }\n    iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n    if (iVar12 == 0) {\n      pOVar42 = *ppOVar34;\n      if (*(int *)&pOVar42->field_0x20 < 0) {\n        uVar11 = *(uint *)&pOVar42->address_;\n        lVar3 = addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n        pOVar19 = (Output_data *)lVar3;\n        uVar13 = (uint)((ulonglong)lVar3 >> 0x20);\n        pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n        if ((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))) {\n          uVar38 = 0x1215;\n          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;\n          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);\n          pOVar42 = *ppOVar34;\n          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);\n          local_70 = *(Output_data **)&pOVar42->address_;\n          if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }\n        }\n        else if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }\n        uVar44 = CONCAT44(uVar13,pOVar42);\n        if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n        bVar1 = pOVar42->field_0x20;\n        *(Output_data **)&pOVar42->offset_ = pOVar36;\n        *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n        pOVar42->field_0x20 = bVar1 & 0xdf | 0x20;\n        pOVar19 = pOVar35;\n        pOVar26 = pOVar36;\n        if (-1 < *(int *)&pOVar42->field_0x20 << 1) {\n          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n          iVar12 = *(int *)&pOVar42->field_0x20;\n          local_70 = pOVar42;\n          goto joined_r0x001878b8;\n        }\nLAB_0018736c:\n        pOVar36 = pOVar26;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14);\n        pOVar35 = pOVar19;\n        if (iVar12 == 0) {\nLAB_00187410:\n          pOVar42 = *ppOVar34;\n        }\n        else {\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }\n        if (iVar10 == 0) {\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }\n        }\n        else {\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }\nLAB_00187b5c:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);\nLAB_00187b74:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)\n        ;\nLAB_00187b94:\n        do {\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        } while( true );\n      }\nLAB_00187bd4:\n      puVar22 = PTR_s_alize_xindex_004323b4 + 0x7850;\n      (*(code *)PTR_do_gold_unreachable_004323c4)\n                (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,puVar22);\n    }\n    else {\n      pOVar42 = *ppOVar34;\n      puVar22 = PTR_s_alize_xindex_004323b4;\n      if (*(int *)&pOVar42->field_0x20 << 2 < 0) {\n        pOVar31 = *(Output_data **)&pOVar42->offset_;\n        pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);\n        pOVar19 = pOVar33;\n        pOVar26 = pOVar31;\n        goto LAB_0018736c;\n      }\n    }\n    uVar11 = 0xe3;\n    pcVar43 = set_offset;\n    this_00 = (Output_segment *)(PTR_s_alize_xindex_004323b4 + -0x4fe0);\n    puVar40 = PTR_do_gold_unreachable_004323c4;\n    (*(code *)PTR_do_gold_unreachable_004323c4)(this_00,0xe3,puVar22 + 0x7818);\n    pOStack_c0 = pOVar31;\n    pOStack_bc = pOVar33;\n    ppOStack_b8 = ppOVar34;\n    pOStack_b4 = pOVar35;\n    pOStack_b0 = pOVar36;\n    puStack_ac = puVar37;\n    iStack_a8 = iVar9;\n    pcStack_a4 = pcVar43;\n    if (this_00->type_ == 1) {\n      puVar21 = (undefined1 *)0x1255;\n      goto LAB_001882ec;\n    }\n    if (*(int *)&this_00->field_0x1a0 << 1 < 0) goto LAB_001882e8;\n    ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n               _M_start;\n    if (this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n        _M_finish != ppOVar34) {\n      pOVar35 = (Output_data *)0x0;\n      iStack_c4 = 0;\n      iStack_c8 = 0;\n      goto LAB_00187c80;\n    }\n    puVar21 = (undefined1 *)0x125f;\n    if (uVar11 == 0) {\n      uVar11 = (byte)this_00->field_0x1a0 & 0xffffffbf | 0x40;\n      *(undefined4 *)((int)&this_00->vaddr_ + 4) = 0;\n      *(undefined4 *)&this_00->vaddr_ = 0;\n      *(undefined4 *)((int)&this_00->paddr_ + 4) = 0;\n      *(undefined4 *)&this_00->paddr_ = 0;\n      this_00->field_0x1a0 = (char)uVar11;\n      *(undefined4 *)((int)&this_00->memsz_ + 4) = 0;\n      *(undefined4 *)&this_00->memsz_ = 0;\n      *(undefined4 *)((int)&this_00->min_p_align_ + 4) = 0;\n      *(undefined4 *)&this_00->min_p_align_ = 0;\n      *(undefined4 *)((int)&this_00->offset_ + 4) = 0;\n      *(undefined4 *)&this_00->offset_ = 0;\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\n      return CONCAT44(uVar11,1);\n    }\n    goto LAB_001882ec;\n  }" { (expression_statement "puVar6 = PTR_s_alize_xindex_004323b4 + 0x5ae4;" (assignment_expression "puVar6 = PTR_s_alize_xindex_004323b4 + 0x5ae4" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + 0x5ae4" identifier + number_literal)) ;) (expression_statement "puVar7 = PTR_s_alize_xindex_004323b4 + 0x5a48;" (assignment_expression "puVar7 = PTR_s_alize_xindex_004323b4 + 0x5a48" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + 0x5a48" identifier + number_literal)) ;) (expression_statement "pOVar8 = (Output_data *)(PTR_s_alize_xindex_004323b4 + -0x29ec);" (assignment_expression "pOVar8 = (Output_data *)(PTR_s_alize_xindex_004323b4 + -0x29ec)" identifier = (cast_expression "(Output_data *)(PTR_s_alize_xindex_004323b4 + -0x29ec)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_alize_xindex_004323b4 + -0x29ec)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x29ec" identifier + number_literal) )))) ;) (expression_statement "pOVar42 = pOVar15;" (assignment_expression "pOVar42 = pOVar15" identifier = identifier) ;) (expression_statement "pOVar31 = pOVar15;" (assignment_expression "pOVar31 = pOVar15" identifier = identifier) ;) (expression_statement "pOVar33 = pOVar18;" (assignment_expression "pOVar33 = pOVar18" identifier = identifier) ;) (labeled_statement "LAB_00187154:\n    iVar9 = (*(*ppOVar34)->_vptr_Output_data[7])(*ppOVar34,8);" statement_identifier : (expression_statement "iVar9 = (*(*ppOVar34)->_vptr_Output_data[7])(*ppOVar34,8);" (assignment_expression "iVar9 = (*(*ppOVar34)->_vptr_Output_data[7])(*ppOVar34,8)" identifier = (call_expression "(*(*ppOVar34)->_vptr_Output_data[7])(*ppOVar34,8)" (parenthesized_expression "(*(*ppOVar34)->_vptr_Output_data[7])" ( (pointer_expression "*(*ppOVar34)->_vptr_Output_data[7]" * (subscript_expression "(*ppOVar34)->_vptr_Output_data[7]" (field_expression "(*ppOVar34)->_vptr_Output_data" (parenthesized_expression "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )) -> field_identifier) [ number_literal ])) )) (argument_list "(*ppOVar34,8)" ( (pointer_expression "*ppOVar34" * identifier) , number_literal )))) ;)) (expression_statement "iVar10 = (*(*ppOVar34)->_vptr_Output_data[8])();" (assignment_expression "iVar10 = (*(*ppOVar34)->_vptr_Output_data[8])()" identifier = (call_expression "(*(*ppOVar34)->_vptr_Output_data[8])()" (parenthesized_expression "(*(*ppOVar34)->_vptr_Output_data[8])" ( (pointer_expression "*(*ppOVar34)->_vptr_Output_data[8]" * (subscript_expression "(*ppOVar34)->_vptr_Output_data[8]" (field_expression "(*ppOVar34)->_vptr_Output_data" (parenthesized_expression "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )) -> field_identifier) [ number_literal ])) )) (argument_list "()" ( )))) ;) (if_statement "if (CONCAT31(in_register_00000018,reset) != 0) {\n      pOVar19 = *ppOVar34;\n      bVar1 = pOVar19->field_0x20;\n      pOVar19->field_0x20 = bVar1 & 0x5f;\n      pOVar42 = (Output_data *)-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f);\n      if (pOVar42 == (Output_data *)0x0) {\n        pOVar19->field_0x20 = bVar1 & 0x1f;\n      }\n      (*pOVar19->_vptr_Output_data[0xf])();\n    }" if (parenthesized_expression "(CONCAT31(in_register_00000018,reset) != 0)" ( (binary_expression "CONCAT31(in_register_00000018,reset) != 0" (call_expression "CONCAT31(in_register_00000018,reset)" identifier (argument_list "(in_register_00000018,reset)" ( identifier , identifier ))) != number_literal) )) (compound_statement "{\n      pOVar19 = *ppOVar34;\n      bVar1 = pOVar19->field_0x20;\n      pOVar19->field_0x20 = bVar1 & 0x5f;\n      pOVar42 = (Output_data *)-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f);\n      if (pOVar42 == (Output_data *)0x0) {\n        pOVar19->field_0x20 = bVar1 & 0x1f;\n      }\n      (*pOVar19->_vptr_Output_data[0xf])();\n    }" { (expression_statement "pOVar19 = *ppOVar34;" (assignment_expression "pOVar19 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (expression_statement "bVar1 = pOVar19->field_0x20;" (assignment_expression "bVar1 = pOVar19->field_0x20" identifier = (field_expression "pOVar19->field_0x20" identifier -> field_identifier)) ;) (expression_statement "pOVar19->field_0x20 = bVar1 & 0x5f;" (assignment_expression "pOVar19->field_0x20 = bVar1 & 0x5f" (field_expression "pOVar19->field_0x20" identifier -> field_identifier) = (binary_expression "bVar1 & 0x5f" identifier & number_literal)) ;) (expression_statement "pOVar42 = (Output_data *)-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f);" (assignment_expression "pOVar42 = (Output_data *)-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f)" identifier = (cast_expression "(Output_data *)-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (unary_expression "-((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f)" - (parenthesized_expression "((*(int *)&pOVar19->field_0x20 << 3) >> 0x1f)" ( (binary_expression "(*(int *)&pOVar19->field_0x20 << 3) >> 0x1f" (parenthesized_expression "(*(int *)&pOVar19->field_0x20 << 3)" ( (binary_expression "*(int *)&pOVar19->field_0x20 << 3" (pointer_expression "*(int *)&pOVar19->field_0x20" * (cast_expression "(int *)&pOVar19->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar19->field_0x20" & (field_expression "pOVar19->field_0x20" identifier -> field_identifier)))) << number_literal) )) >> number_literal) ))))) ;) (if_statement "if (pOVar42 == (Output_data *)0x0) {\n        pOVar19->field_0x20 = bVar1 & 0x1f;\n      }" if (parenthesized_expression "(pOVar42 == (Output_data *)0x0)" ( (binary_expression "pOVar42 == (Output_data *)0x0" identifier == (cast_expression "(Output_data *)0x0" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pOVar19->field_0x20 = bVar1 & 0x1f;\n      }" { (expression_statement "pOVar19->field_0x20 = bVar1 & 0x1f;" (assignment_expression "pOVar19->field_0x20 = bVar1 & 0x1f" (field_expression "pOVar19->field_0x20" identifier -> field_identifier) = (binary_expression "bVar1 & 0x1f" identifier & number_literal)) ;) })) (expression_statement "(*pOVar19->_vptr_Output_data[0xf])();" (call_expression "(*pOVar19->_vptr_Output_data[0xf])()" (parenthesized_expression "(*pOVar19->_vptr_Output_data[0xf])" ( (pointer_expression "*pOVar19->_vptr_Output_data[0xf]" * (subscript_expression "pOVar19->_vptr_Output_data[0xf]" (field_expression "pOVar19->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) )) (argument_list "()" ( ))) ;) })) (expression_statement "piVar14 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar14 = (int *)PTR_parameters_00432be0" identifier = (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "puVar37 = PTR_parameters_00432be0;" (assignment_expression "puVar37 = PTR_parameters_00432be0" identifier = identifier) ;) (if_statement "if (-1 < *(int *)&(*ppOVar34)->field_0x20) {\n      uVar11 = (*(*ppOVar34)->_vptr_Output_data[3])();\n      uVar4 = CONCAT44(uVar11,pOVar42);\n      uVar44 = CONCAT44(uVar11,pOVar42);\n      if (iVar10 == 0) {\n        if (*in_tls == false) goto LAB_00187254;\n        uVar44 = maximum_alignment(layout->tls_segment_);\n        if (uVar4 < uVar44) {\n          *in_tls = false;\n        }\n        else {\n          *in_tls = false;\n          uVar44 = uVar4;\n        }\n        piVar14 = (int *)PTR_parameters_00432be0;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar12 != 0) goto LAB_00187604;\nLAB_00187268:\n        if (pOVar31 == pOVar36) goto LAB_001878dc;\n        goto LAB_00187270;\n      }\n      uVar44 = uVar4;\n      if (*in_tls != false) goto LAB_00187254;\n      if (layout->tls_segment_ == (Output_segment *)0x0) {\n        uVar38 = 0x11c4;\n        goto LAB_00187b08;\n      }\n      uVar44 = maximum_alignment(layout->tls_segment_);\n      uVar13 = (uint)(uVar44 >> 0x20);\n      if (uVar11 <= uVar13) {\n        local_70 = pOVar42;\n        if (uVar11 == uVar13) goto LAB_00187bac;\n        goto LAB_0018723c;\n      }\nLAB_00187bbc:\n      uVar38 = 0x11c6;\n      goto LAB_00187b08;\n    }" if (parenthesized_expression "(-1 < *(int *)&(*ppOVar34)->field_0x20)" ( (binary_expression "-1 < *(int *)&(*ppOVar34)->field_0x20" number_literal < (pointer_expression "*(int *)&(*ppOVar34)->field_0x20" * (cast_expression "(int *)&(*ppOVar34)->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(*ppOVar34)->field_0x20" & (field_expression "(*ppOVar34)->field_0x20" (parenthesized_expression "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )) -> field_identifier))))) )) (compound_statement "{\n      uVar11 = (*(*ppOVar34)->_vptr_Output_data[3])();\n      uVar4 = CONCAT44(uVar11,pOVar42);\n      uVar44 = CONCAT44(uVar11,pOVar42);\n      if (iVar10 == 0) {\n        if (*in_tls == false) goto LAB_00187254;\n        uVar44 = maximum_alignment(layout->tls_segment_);\n        if (uVar4 < uVar44) {\n          *in_tls = false;\n        }\n        else {\n          *in_tls = false;\n          uVar44 = uVar4;\n        }\n        piVar14 = (int *)PTR_parameters_00432be0;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar12 != 0) goto LAB_00187604;\nLAB_00187268:\n        if (pOVar31 == pOVar36) goto LAB_001878dc;\n        goto LAB_00187270;\n      }\n      uVar44 = uVar4;\n      if (*in_tls != false) goto LAB_00187254;\n      if (layout->tls_segment_ == (Output_segment *)0x0) {\n        uVar38 = 0x11c4;\n        goto LAB_00187b08;\n      }\n      uVar44 = maximum_alignment(layout->tls_segment_);\n      uVar13 = (uint)(uVar44 >> 0x20);\n      if (uVar11 <= uVar13) {\n        local_70 = pOVar42;\n        if (uVar11 == uVar13) goto LAB_00187bac;\n        goto LAB_0018723c;\n      }\nLAB_00187bbc:\n      uVar38 = 0x11c6;\n      goto LAB_00187b08;\n    }" { (expression_statement "uVar11 = (*(*ppOVar34)->_vptr_Output_data[3])();" (assignment_expression "uVar11 = (*(*ppOVar34)->_vptr_Output_data[3])()" identifier = (call_expression "(*(*ppOVar34)->_vptr_Output_data[3])()" (parenthesized_expression "(*(*ppOVar34)->_vptr_Output_data[3])" ( (pointer_expression "*(*ppOVar34)->_vptr_Output_data[3]" * (subscript_expression "(*ppOVar34)->_vptr_Output_data[3]" (field_expression "(*ppOVar34)->_vptr_Output_data" (parenthesized_expression "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )) -> field_identifier) [ number_literal ])) )) (argument_list "()" ( )))) ;) (expression_statement "uVar4 = CONCAT44(uVar11,pOVar42);" (assignment_expression "uVar4 = CONCAT44(uVar11,pOVar42)" identifier = (call_expression "CONCAT44(uVar11,pOVar42)" identifier (argument_list "(uVar11,pOVar42)" ( identifier , identifier )))) ;) (expression_statement "uVar44 = CONCAT44(uVar11,pOVar42);" (assignment_expression "uVar44 = CONCAT44(uVar11,pOVar42)" identifier = (call_expression "CONCAT44(uVar11,pOVar42)" identifier (argument_list "(uVar11,pOVar42)" ( identifier , identifier )))) ;) (if_statement "if (iVar10 == 0) {\n        if (*in_tls == false) goto LAB_00187254;\n        uVar44 = maximum_alignment(layout->tls_segment_);\n        if (uVar4 < uVar44) {\n          *in_tls = false;\n        }\n        else {\n          *in_tls = false;\n          uVar44 = uVar4;\n        }\n        piVar14 = (int *)PTR_parameters_00432be0;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar12 != 0) goto LAB_00187604;\nLAB_00187268:\n        if (pOVar31 == pOVar36) goto LAB_001878dc;\n        goto LAB_00187270;\n      }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n        if (*in_tls == false) goto LAB_00187254;\n        uVar44 = maximum_alignment(layout->tls_segment_);\n        if (uVar4 < uVar44) {\n          *in_tls = false;\n        }\n        else {\n          *in_tls = false;\n          uVar44 = uVar4;\n        }\n        piVar14 = (int *)PTR_parameters_00432be0;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar12 != 0) goto LAB_00187604;\nLAB_00187268:\n        if (pOVar31 == pOVar36) goto LAB_001878dc;\n        goto LAB_00187270;\n      }" { (if_statement "if (*in_tls == false) goto LAB_00187254;" if (parenthesized_expression "(*in_tls == false)" ( (binary_expression "*in_tls == false" (pointer_expression "*in_tls" * identifier) == false) )) (goto_statement "goto LAB_00187254;" goto statement_identifier ;)) (expression_statement "uVar44 = maximum_alignment(layout->tls_segment_);" (assignment_expression "uVar44 = maximum_alignment(layout->tls_segment_)" identifier = (call_expression "maximum_alignment(layout->tls_segment_)" identifier (argument_list "(layout->tls_segment_)" ( (field_expression "layout->tls_segment_" identifier -> field_identifier) )))) ;) (if_statement "if (uVar4 < uVar44) {\n          *in_tls = false;\n        }\n        else {\n          *in_tls = false;\n          uVar44 = uVar4;\n        }" if (parenthesized_expression "(uVar4 < uVar44)" ( (binary_expression "uVar4 < uVar44" identifier < identifier) )) (compound_statement "{\n          *in_tls = false;\n        }" { (expression_statement "*in_tls = false;" (assignment_expression "*in_tls = false" (pointer_expression "*in_tls" * identifier) = false) ;) }) (else_clause "else {\n          *in_tls = false;\n          uVar44 = uVar4;\n        }" else (compound_statement "{\n          *in_tls = false;\n          uVar44 = uVar4;\n        }" { (expression_statement "*in_tls = false;" (assignment_expression "*in_tls = false" (pointer_expression "*in_tls" * identifier) = false) ;) (expression_statement "uVar44 = uVar4;" (assignment_expression "uVar44 = uVar4" identifier = identifier) ;) }))) (expression_statement "piVar14 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar14 = (int *)PTR_parameters_00432be0" identifier = (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" ( (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" * (cast_expression "(undefined4 *)PTR_parameters_00432be0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )))) ;) (if_statement "if (iVar12 != 0) goto LAB_00187604;" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00187604;" goto statement_identifier ;)) (labeled_statement "LAB_00187268:\n        if (pOVar31 == pOVar36) goto LAB_001878dc;" statement_identifier : (if_statement "if (pOVar31 == pOVar36) goto LAB_001878dc;" if (parenthesized_expression "(pOVar31 == pOVar36)" ( (binary_expression "pOVar31 == pOVar36" identifier == identifier) )) (goto_statement "goto LAB_001878dc;" goto statement_identifier ;))) (goto_statement "goto LAB_00187270;" goto statement_identifier ;) })) (expression_statement "uVar44 = uVar4;" (assignment_expression "uVar44 = uVar4" identifier = identifier) ;) (if_statement "if (*in_tls != false) goto LAB_00187254;" if (parenthesized_expression "(*in_tls != false)" ( (binary_expression "*in_tls != false" (pointer_expression "*in_tls" * identifier) != false) )) (goto_statement "goto LAB_00187254;" goto statement_identifier ;)) (if_statement "if (layout->tls_segment_ == (Output_segment *)0x0) {\n        uVar38 = 0x11c4;\n        goto LAB_00187b08;\n      }" if (parenthesized_expression "(layout->tls_segment_ == (Output_segment *)0x0)" ( (binary_expression "layout->tls_segment_ == (Output_segment *)0x0" (field_expression "layout->tls_segment_" identifier -> field_identifier) == (cast_expression "(Output_segment *)0x0" ( (type_descriptor "Output_segment *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        uVar38 = 0x11c4;\n        goto LAB_00187b08;\n      }" { (expression_statement "uVar38 = 0x11c4;" (assignment_expression "uVar38 = 0x11c4" identifier = number_literal) ;) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "uVar44 = maximum_alignment(layout->tls_segment_);" (assignment_expression "uVar44 = maximum_alignment(layout->tls_segment_)" identifier = (call_expression "maximum_alignment(layout->tls_segment_)" identifier (argument_list "(layout->tls_segment_)" ( (field_expression "layout->tls_segment_" identifier -> field_identifier) )))) ;) (expression_statement "uVar13 = (uint)(uVar44 >> 0x20);" (assignment_expression "uVar13 = (uint)(uVar44 >> 0x20)" identifier = (call_expression "(uint)(uVar44 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar44 >> 0x20)" ( (binary_expression "uVar44 >> 0x20" identifier >> number_literal) )))) ;) (if_statement "if (uVar11 <= uVar13) {\n        local_70 = pOVar42;\n        if (uVar11 == uVar13) goto LAB_00187bac;\n        goto LAB_0018723c;\n      }" if (parenthesized_expression "(uVar11 <= uVar13)" ( (binary_expression "uVar11 <= uVar13" identifier <= identifier) )) (compound_statement "{\n        local_70 = pOVar42;\n        if (uVar11 == uVar13) goto LAB_00187bac;\n        goto LAB_0018723c;\n      }" { (expression_statement "local_70 = pOVar42;" (assignment_expression "local_70 = pOVar42" identifier = identifier) ;) (if_statement "if (uVar11 == uVar13) goto LAB_00187bac;" if (parenthesized_expression "(uVar11 == uVar13)" ( (binary_expression "uVar11 == uVar13" identifier == identifier) )) (goto_statement "goto LAB_00187bac;" goto statement_identifier ;)) (goto_statement "goto LAB_0018723c;" goto statement_identifier ;) })) (labeled_statement "LAB_00187bbc:\n      uVar38 = 0x11c6;" statement_identifier : (expression_statement "uVar38 = 0x11c6;" (assignment_expression "uVar38 = 0x11c6" identifier = number_literal) ;)) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" ( (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" * (cast_expression "(undefined4 *)PTR_parameters_00432be0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )))) ;) (if_statement "if (iVar12 == 0) {\n      pOVar42 = *ppOVar34;\n      if (*(int *)&pOVar42->field_0x20 < 0) {\n        uVar11 = *(uint *)&pOVar42->address_;\n        lVar3 = addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n        pOVar19 = (Output_data *)lVar3;\n        uVar13 = (uint)((ulonglong)lVar3 >> 0x20);\n        pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n        if ((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))) {\n          uVar38 = 0x1215;\n          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;\n          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);\n          pOVar42 = *ppOVar34;\n          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);\n          local_70 = *(Output_data **)&pOVar42->address_;\n          if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }\n        }\n        else if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }\n        uVar44 = CONCAT44(uVar13,pOVar42);\n        if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n        bVar1 = pOVar42->field_0x20;\n        *(Output_data **)&pOVar42->offset_ = pOVar36;\n        *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n        pOVar42->field_0x20 = bVar1 & 0xdf | 0x20;\n        pOVar19 = pOVar35;\n        pOVar26 = pOVar36;\n        if (-1 < *(int *)&pOVar42->field_0x20 << 1) {\n          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n          iVar12 = *(int *)&pOVar42->field_0x20;\n          local_70 = pOVar42;\n          goto joined_r0x001878b8;\n        }\nLAB_0018736c:\n        pOVar36 = pOVar26;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14);\n        pOVar35 = pOVar19;\n        if (iVar12 == 0) {\nLAB_00187410:\n          pOVar42 = *ppOVar34;\n        }\n        else {\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }\n        if (iVar10 == 0) {\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }\n        }\n        else {\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }\nLAB_00187b5c:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);\nLAB_00187b74:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)\n        ;\nLAB_00187b94:\n        do {\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        } while( true );\n      }\nLAB_00187bd4:\n      puVar22 = PTR_s_alize_xindex_004323b4 + 0x7850;\n      (*(code *)PTR_do_gold_unreachable_004323c4)\n                (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,puVar22);\n    }\n    else {\n      pOVar42 = *ppOVar34;\n      puVar22 = PTR_s_alize_xindex_004323b4;\n      if (*(int *)&pOVar42->field_0x20 << 2 < 0) {\n        pOVar31 = *(Output_data **)&pOVar42->offset_;\n        pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);\n        pOVar19 = pOVar33;\n        pOVar26 = pOVar31;\n        goto LAB_0018736c;\n      }\n    }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n      pOVar42 = *ppOVar34;\n      if (*(int *)&pOVar42->field_0x20 < 0) {\n        uVar11 = *(uint *)&pOVar42->address_;\n        lVar3 = addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n        pOVar19 = (Output_data *)lVar3;\n        uVar13 = (uint)((ulonglong)lVar3 >> 0x20);\n        pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n        if ((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))) {\n          uVar38 = 0x1215;\n          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;\n          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);\n          pOVar42 = *ppOVar34;\n          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);\n          local_70 = *(Output_data **)&pOVar42->address_;\n          if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }\n        }\n        else if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }\n        uVar44 = CONCAT44(uVar13,pOVar42);\n        if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n        bVar1 = pOVar42->field_0x20;\n        *(Output_data **)&pOVar42->offset_ = pOVar36;\n        *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n        pOVar42->field_0x20 = bVar1 & 0xdf | 0x20;\n        pOVar19 = pOVar35;\n        pOVar26 = pOVar36;\n        if (-1 < *(int *)&pOVar42->field_0x20 << 1) {\n          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n          iVar12 = *(int *)&pOVar42->field_0x20;\n          local_70 = pOVar42;\n          goto joined_r0x001878b8;\n        }\nLAB_0018736c:\n        pOVar36 = pOVar26;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14);\n        pOVar35 = pOVar19;\n        if (iVar12 == 0) {\nLAB_00187410:\n          pOVar42 = *ppOVar34;\n        }\n        else {\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }\n        if (iVar10 == 0) {\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }\n        }\n        else {\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }\nLAB_00187b5c:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);\nLAB_00187b74:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)\n        ;\nLAB_00187b94:\n        do {\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        } while( true );\n      }\nLAB_00187bd4:\n      puVar22 = PTR_s_alize_xindex_004323b4 + 0x7850;\n      (*(code *)PTR_do_gold_unreachable_004323c4)\n                (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,puVar22);\n    }" { (expression_statement "pOVar42 = *ppOVar34;" (assignment_expression "pOVar42 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (if_statement "if (*(int *)&pOVar42->field_0x20 < 0) {\n        uVar11 = *(uint *)&pOVar42->address_;\n        lVar3 = addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n        pOVar19 = (Output_data *)lVar3;\n        uVar13 = (uint)((ulonglong)lVar3 >> 0x20);\n        pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n        if ((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))) {\n          uVar38 = 0x1215;\n          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;\n          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);\n          pOVar42 = *ppOVar34;\n          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);\n          local_70 = *(Output_data **)&pOVar42->address_;\n          if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }\n        }\n        else if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }\n        uVar44 = CONCAT44(uVar13,pOVar42);\n        if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n        bVar1 = pOVar42->field_0x20;\n        *(Output_data **)&pOVar42->offset_ = pOVar36;\n        *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n        pOVar42->field_0x20 = bVar1 & 0xdf | 0x20;\n        pOVar19 = pOVar35;\n        pOVar26 = pOVar36;\n        if (-1 < *(int *)&pOVar42->field_0x20 << 1) {\n          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n          iVar12 = *(int *)&pOVar42->field_0x20;\n          local_70 = pOVar42;\n          goto joined_r0x001878b8;\n        }\nLAB_0018736c:\n        pOVar36 = pOVar26;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14);\n        pOVar35 = pOVar19;\n        if (iVar12 == 0) {\nLAB_00187410:\n          pOVar42 = *ppOVar34;\n        }\n        else {\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }\n        if (iVar10 == 0) {\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }\n        }\n        else {\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }\nLAB_00187b5c:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);\nLAB_00187b74:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)\n        ;\nLAB_00187b94:\n        do {\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        } while( true );\n      }" if (parenthesized_expression "(*(int *)&pOVar42->field_0x20 < 0)" ( (binary_expression "*(int *)&pOVar42->field_0x20 < 0" (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier)))) < number_literal) )) (compound_statement "{\n        uVar11 = *(uint *)&pOVar42->address_;\n        lVar3 = addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n        pOVar19 = (Output_data *)lVar3;\n        uVar13 = (uint)((ulonglong)lVar3 >> 0x20);\n        pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n        if ((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))) {\n          uVar38 = 0x1215;\n          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;\n          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);\n          pOVar42 = *ppOVar34;\n          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);\n          local_70 = *(Output_data **)&pOVar42->address_;\n          if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }\n        }\n        else if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }\n        uVar44 = CONCAT44(uVar13,pOVar42);\n        if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;\n        bVar1 = pOVar42->field_0x20;\n        *(Output_data **)&pOVar42->offset_ = pOVar36;\n        *(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;\n        pOVar42->field_0x20 = bVar1 & 0xdf | 0x20;\n        pOVar19 = pOVar35;\n        pOVar26 = pOVar36;\n        if (-1 < *(int *)&pOVar42->field_0x20 << 1) {\n          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n          iVar12 = *(int *)&pOVar42->field_0x20;\n          local_70 = pOVar42;\n          goto joined_r0x001878b8;\n        }\nLAB_0018736c:\n        pOVar36 = pOVar26;\n        iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14);\n        pOVar35 = pOVar19;\n        if (iVar12 == 0) {\nLAB_00187410:\n          pOVar42 = *ppOVar34;\n        }\n        else {\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }\n        if (iVar10 == 0) {\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }\n        }\n        else {\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }\nLAB_00187b5c:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);\nLAB_00187b74:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)\n        ;\nLAB_00187b94:\n        do {\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        } while( true );\n      }" { (expression_statement "uVar11 = *(uint *)&pOVar42->address_;" (assignment_expression "uVar11 = *(uint *)&pOVar42->address_" identifier = (pointer_expression "*(uint *)&pOVar42->address_" * (cast_expression "(uint *)&pOVar42->address_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->address_" & (field_expression "pOVar42->address_" identifier -> field_identifier))))) ;) (expression_statement "lVar3 = addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));" (assignment_expression "lVar3 = addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" identifier = (binary_expression "addr + CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" identifier + (call_expression "CONCAT44((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" identifier (argument_list "((undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" ( (cast_expression "(undefined *)\n                                ((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15))" ( (binary_expression "(int)pOVar31 +\n                                (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)" (cast_expression "(int)pOVar31" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15)" ( (binary_expression "-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                (int)pOVar15" (unary_expression "-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18))" - (call_expression "(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18))" ( (binary_expression "pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)" identifier < (cast_expression "(Output_data *)((int)pOVar33 - (int)pOVar18)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar33 - (int)pOVar18)" ( (binary_expression "(int)pOVar33 - (int)pOVar18" (cast_expression "(int)pOVar33" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pOVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )))) )))) - (cast_expression "(int)pOVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))) , (cast_expression "(Output_data *)((int)pOVar33 - (int)pOVar18)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar33 - (int)pOVar18)" ( (binary_expression "(int)pOVar33 - (int)pOVar18" (cast_expression "(int)pOVar33" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pOVar18" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))))) ;) (expression_statement "pOVar19 = (Output_data *)lVar3;" (assignment_expression "pOVar19 = (Output_data *)lVar3" identifier = (cast_expression "(Output_data *)lVar3" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar13 = (uint)((ulonglong)lVar3 >> 0x20);" (assignment_expression "uVar13 = (uint)((ulonglong)lVar3 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar3 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar3 >> 0x20)" ( (binary_expression "(ulonglong)lVar3 >> 0x20" (cast_expression "(ulonglong)lVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);" (assignment_expression "pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4)" identifier = (pointer_expression "*(Output_data **)((int)&pOVar42->address_ + 4)" * (cast_expression "(Output_data **)((int)&pOVar42->address_ + 4)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&pOVar42->address_ + 4)" ( (binary_expression "(int)&pOVar42->address_ + 4" (cast_expression "(int)&pOVar42->address_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar42->address_" & (field_expression "pOVar42->address_" identifier -> field_identifier))) + number_literal) ))))) ;) (if_statement "if ((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))) {\n          uVar38 = 0x1215;\n          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;\n          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);\n          pOVar42 = *ppOVar34;\n          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);\n          local_70 = *(Output_data **)&pOVar42->address_;\n          if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }\n        }\n        else if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }" if (parenthesized_expression "((uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19))))" ( (binary_expression "(uVar11 < uVar13) || ((uVar13 == uVar11 && (pOVar26 < pOVar19)))" (parenthesized_expression "(uVar11 < uVar13)" ( (binary_expression "uVar11 < uVar13" identifier < identifier) )) || (parenthesized_expression "((uVar13 == uVar11 && (pOVar26 < pOVar19)))" ( (parenthesized_expression "(uVar13 == uVar11 && (pOVar26 < pOVar19))" ( (binary_expression "uVar13 == uVar11 && (pOVar26 < pOVar19)" (binary_expression "uVar13 == uVar11" identifier == identifier) && (parenthesized_expression "(pOVar26 < pOVar19)" ( (binary_expression "pOVar26 < pOVar19" identifier < identifier) ))) )) ))) )) (compound_statement "{\n          uVar38 = 0x1215;\n          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;\n          pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);\n          pOVar42 = *ppOVar34;\n          if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n          pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);\n          local_70 = *(Output_data **)&pOVar42->address_;\n          if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }\n        }" { (expression_statement "uVar38 = 0x1215;" (assignment_expression "uVar38 = 0x1215" identifier = number_literal) ;) (if_statement "if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)\n          goto LAB_00187b08;" if (parenthesized_expression "((layout->script_options_->script_sections_).saw_sections_clause_ == false)" ( (binary_expression "(layout->script_options_->script_sections_).saw_sections_clause_ == false" (field_expression "(layout->script_options_->script_sections_).saw_sections_clause_" (parenthesized_expression "(layout->script_options_->script_sections_)" ( (field_expression "layout->script_options_->script_sections_" (field_expression "layout->script_options_" identifier -> field_identifier) -> field_identifier) )) . field_identifier) == false) )) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;)) (expression_statement "pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215);" (assignment_expression "pOVar26 = (Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215)" identifier = (cast_expression "(Output_data *)(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*pOVar42->_vptr_Output_data[9])(pOVar42,0x1215)" (parenthesized_expression "(*pOVar42->_vptr_Output_data[9])" ( (pointer_expression "*pOVar42->_vptr_Output_data[9]" * (subscript_expression "pOVar42->_vptr_Output_data[9]" (field_expression "pOVar42->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) )) (argument_list "(pOVar42,0x1215)" ( identifier , number_literal ))))) ;) (expression_statement "pOVar42 = *ppOVar34;" (assignment_expression "pOVar42 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (if_statement "if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;" if (parenthesized_expression "(-1 < *(int *)&pOVar42->field_0x20)" ( (binary_expression "-1 < *(int *)&pOVar42->field_0x20" number_literal < (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier))))) )) (goto_statement "goto LAB_00187bd4;" goto statement_identifier ;)) (expression_statement "pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4);" (assignment_expression "pOVar27 = *(Output_data **)((int)&pOVar42->address_ + 4)" identifier = (pointer_expression "*(Output_data **)((int)&pOVar42->address_ + 4)" * (cast_expression "(Output_data **)((int)&pOVar42->address_ + 4)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&pOVar42->address_ + 4)" ( (binary_expression "(int)&pOVar42->address_ + 4" (cast_expression "(int)&pOVar42->address_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar42->address_" & (field_expression "pOVar42->address_" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_70 = *(Output_data **)&pOVar42->address_;" (assignment_expression "local_70 = *(Output_data **)&pOVar42->address_" identifier = (pointer_expression "*(Output_data **)&pOVar42->address_" * (cast_expression "(Output_data **)&pOVar42->address_" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pOVar42->address_" & (field_expression "pOVar42->address_" identifier -> field_identifier))))) ;) (if_statement "if (pOVar26 == (Output_data *)0x0) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }\n          else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }" if (parenthesized_expression "(pOVar26 == (Output_data *)0x0)" ( (binary_expression "pOVar26 == (Output_data *)0x0" identifier == (cast_expression "(Output_data *)0x0" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)(uVar38);\n            pOVar42 = *ppOVar34;\n          }" { (expression_statement "uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8);" (assignment_expression "uVar38 = (*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar40 + 0x5aa8)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar40 + 0x5aa8)" ( (binary_expression "puVar40 + 0x5aa8" identifier + number_literal) )))) ;) (expression_statement "local_90 = local_70;" (assignment_expression "local_90 = local_70" identifier = identifier) ;) (expression_statement "local_8c = pOVar27;" (assignment_expression "local_8c = pOVar27" identifier = identifier) ;) (expression_statement "(*(code *)PTR_gold_error_00432d84)(uVar38);" (call_expression "(*(code *)PTR_gold_error_00432d84)(uVar38)" (parenthesized_expression "(*(code *)PTR_gold_error_00432d84)" ( (pointer_expression "*(code *)PTR_gold_error_00432d84" * (cast_expression "(code *)PTR_gold_error_00432d84" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar38)" ( identifier ))) ;) (expression_statement "pOVar42 = *ppOVar34;" (assignment_expression "pOVar42 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) }) (else_clause "else {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }" else (compound_statement "{\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);\n            local_90 = local_70;\n            local_8c = pOVar27;\n            (*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);\n            pOVar42 = *ppOVar34;\n            local_70 = pOVar26;\n          }" { (expression_statement "uVar38 = (*(code *)PTR_gettext_00436818)(puVar6);" (assignment_expression "uVar38 = (*(code *)PTR_gettext_00436818)(puVar6)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar6)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar6)" ( identifier )))) ;) (expression_statement "local_90 = local_70;" (assignment_expression "local_90 = local_70" identifier = identifier) ;) (expression_statement "local_8c = pOVar27;" (assignment_expression "local_8c = pOVar27" identifier = identifier) ;) (expression_statement "(*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19);" (call_expression "(*(code *)PTR_gold_error_00432d84)\n                      (uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19)" (parenthesized_expression "(*(code *)PTR_gold_error_00432d84)" ( (pointer_expression "*(code *)PTR_gold_error_00432d84" * (cast_expression "(code *)PTR_gold_error_00432d84" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar38,*(undefined4 *)&pOVar26->field_0x24,uVar13,pOVar19)" ( identifier , (pointer_expression "*(undefined4 *)&pOVar26->field_0x24" * (cast_expression "(undefined4 *)&pOVar26->field_0x24" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar26->field_0x24" & (field_expression "pOVar26->field_0x24" identifier -> field_identifier)))) , identifier , identifier ))) ;) (expression_statement "pOVar42 = *ppOVar34;" (assignment_expression "pOVar42 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (expression_statement "local_70 = pOVar26;" (assignment_expression "local_70 = pOVar26" identifier = identifier) ;) }))) }) (else_clause "else if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }" else (if_statement "if (iVar9 == 0) {\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }\n        else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n          if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          pOVar35 = pOVar33;\n          pOVar36 = pOVar31;\n        }" { (if_statement "if (((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))) {\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }" if (parenthesized_expression "(((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0))))" ( (binary_expression "((int)pOVar36 < (int)pOVar31) ||\n             ((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))" (parenthesized_expression "((int)pOVar36 < (int)pOVar31)" ( (binary_expression "(int)pOVar36 < (int)pOVar31" (cast_expression "(int)pOVar36" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)pOVar31" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)))" ( (parenthesized_expression "(pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0))" ( (comma_expression "pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33), pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)" (assignment_expression "pOVar35 = (Output_data *)(uint)(pOVar35 < pOVar33)" identifier = (cast_expression "(Output_data *)(uint)(pOVar35 < pOVar33)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(uint)(pOVar35 < pOVar33)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pOVar35 < pOVar33)" ( (binary_expression "pOVar35 < pOVar33" identifier < identifier) ))))) , (binary_expression "pOVar31 == pOVar36 &&\n              (pOVar35 != (Output_data *)0x0)" (binary_expression "pOVar31 == pOVar36" identifier == identifier) && (parenthesized_expression "(pOVar35 != (Output_data *)0x0)" ( (binary_expression "pOVar35 != (Output_data *)0x0" identifier != (cast_expression "(Output_data *)0x0" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )))) )) ))) )) (compound_statement "{\n            uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);\n            (*(code *)PTR_gold_warning_0043245c)(uVar38);\n            pOVar42 = *ppOVar34;\n            if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;\n            uVar11 = *(uint *)&pOVar42->address_;\n            pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);\n            local_70 = pOVar19;\n          }" { (expression_statement "uVar38 = (*(code *)PTR_gettext_00436818)(puVar7);" (assignment_expression "uVar38 = (*(code *)PTR_gettext_00436818)(puVar7)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar7)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar7)" ( identifier )))) ;) (expression_statement "(*(code *)PTR_gold_warning_0043245c)(uVar38);" (call_expression "(*(code *)PTR_gold_warning_0043245c)(uVar38)" (parenthesized_expression "(*(code *)PTR_gold_warning_0043245c)" ( (pointer_expression "*(code *)PTR_gold_warning_0043245c" * (cast_expression "(code *)PTR_gold_warning_0043245c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar38)" ( identifier ))) ;) (expression_statement "pOVar42 = *ppOVar34;" (assignment_expression "pOVar42 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (if_statement "if (-1 < *(int *)&pOVar42->field_0x20) goto LAB_00187bd4;" if (parenthesized_expression "(-1 < *(int *)&pOVar42->field_0x20)" ( (binary_expression "-1 < *(int *)&pOVar42->field_0x20" number_literal < (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier))))) )) (goto_statement "goto LAB_00187bd4;" goto statement_identifier ;)) (expression_statement "uVar11 = *(uint *)&pOVar42->address_;" (assignment_expression "uVar11 = *(uint *)&pOVar42->address_" identifier = (pointer_expression "*(uint *)&pOVar42->address_" * (cast_expression "(uint *)&pOVar42->address_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->address_" & (field_expression "pOVar42->address_" identifier -> field_identifier))))) ;) (expression_statement "pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4);" (assignment_expression "pOVar26 = *(Output_data **)((int)&pOVar42->address_ + 4)" identifier = (pointer_expression "*(Output_data **)((int)&pOVar42->address_ + 4)" * (cast_expression "(Output_data **)((int)&pOVar42->address_ + 4)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&pOVar42->address_ + 4)" ( (binary_expression "(int)&pOVar42->address_ + 4" (cast_expression "(int)&pOVar42->address_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar42->address_" & (field_expression "pOVar42->address_" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_70 = pOVar19;" (assignment_expression "local_70 = pOVar19" identifier = identifier) ;) })) (expression_statement "pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);" (assignment_expression "pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19)" identifier = (cast_expression "(Output_data *)((int)pOVar33 - (int)pOVar19)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar33 - (int)pOVar19)" ( (binary_expression "(int)pOVar33 - (int)pOVar19" (cast_expression "(int)pOVar33" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pOVar19" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "bVar2 = pOVar33 < pOVar19;" (assignment_expression "bVar2 = pOVar33 < pOVar19" identifier = (binary_expression "pOVar33 < pOVar19" identifier < identifier)) ;) (expression_statement "pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);" (assignment_expression "pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26)" identifier = (cast_expression "(Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar19->_vptr_Output_data + (int)pOVar26)" ( (binary_expression "(int)&pOVar19->_vptr_Output_data + (int)pOVar26" (cast_expression "(int)&pOVar19->_vptr_Output_data" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar19->_vptr_Output_data" & (field_expression "pOVar19->_vptr_Output_data" identifier -> field_identifier))) + (cast_expression "(int)pOVar26" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));" (assignment_expression "pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13))" identifier = (cast_expression "(Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13))" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13))" ( (binary_expression "(int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13)" (binary_expression "(int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11" (binary_expression "(int)pOVar31 + (uint)(pOVar33 < pOVar19)" (cast_expression "(int)pOVar31" ( (type_descriptor "int" primitive_type) ) identifier) + (call_expression "(uint)(pOVar33 < pOVar19)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pOVar33 < pOVar19)" ( (binary_expression "pOVar33 < pOVar19" identifier < identifier) )))) + identifier) + (parenthesized_expression "(-(uint)bVar2 - uVar13)" ( (binary_expression "-(uint)bVar2 - uVar13" (unary_expression "-(uint)bVar2" - (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) - identifier) ))) )))) ;) (expression_statement "pOVar35 = pOVar33;" (assignment_expression "pOVar35 = pOVar33" identifier = identifier) ;) (expression_statement "pOVar36 = pOVar31;" (assignment_expression "pOVar36 = pOVar31" identifier = identifier) ;) }) (else_clause "else {\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }" else (compound_statement "{\n          pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);\n          bVar2 = pOVar33 < pOVar19;\n          pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);\n          if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }\n          pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));\n          if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }\n        }" { (expression_statement "pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19);" (assignment_expression "pOVar19 = (Output_data *)((int)pOVar33 - (int)pOVar19)" identifier = (cast_expression "(Output_data *)((int)pOVar33 - (int)pOVar19)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar33 - (int)pOVar19)" ( (binary_expression "(int)pOVar33 - (int)pOVar19" (cast_expression "(int)pOVar33" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pOVar19" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "bVar2 = pOVar33 < pOVar19;" (assignment_expression "bVar2 = pOVar33 < pOVar19" identifier = (binary_expression "pOVar33 < pOVar19" identifier < identifier)) ;) (expression_statement "pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26);" (assignment_expression "pOVar33 = (Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26)" identifier = (cast_expression "(Output_data *)((int)&pOVar19->_vptr_Output_data + (int)pOVar26)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar19->_vptr_Output_data + (int)pOVar26)" ( (binary_expression "(int)&pOVar19->_vptr_Output_data + (int)pOVar26" (cast_expression "(int)&pOVar19->_vptr_Output_data" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar19->_vptr_Output_data" & (field_expression "pOVar19->_vptr_Output_data" identifier -> field_identifier))) + (cast_expression "(int)pOVar26" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (if_statement "if (iVar10 != 0) {\n            pOVar35 = pOVar33;\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n            pOVar35 = pOVar33;\n          }" { (expression_statement "pOVar35 = pOVar33;" (assignment_expression "pOVar35 = pOVar33" identifier = identifier) ;) })) (expression_statement "pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13));" (assignment_expression "pOVar31 = (Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13))" identifier = (cast_expression "(Output_data *)\n                    ((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13))" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13))" ( (binary_expression "(int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11 + (-(uint)bVar2 - uVar13)" (binary_expression "(int)pOVar31 + (uint)(pOVar33 < pOVar19) + uVar11" (binary_expression "(int)pOVar31 + (uint)(pOVar33 < pOVar19)" (cast_expression "(int)pOVar31" ( (type_descriptor "int" primitive_type) ) identifier) + (call_expression "(uint)(pOVar33 < pOVar19)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pOVar33 < pOVar19)" ( (binary_expression "pOVar33 < pOVar19" identifier < identifier) )))) + identifier) + (parenthesized_expression "(-(uint)bVar2 - uVar13)" ( (binary_expression "-(uint)bVar2 - uVar13" (unary_expression "-(uint)bVar2" - (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) - identifier) ))) )))) ;) (if_statement "if (iVar10 != 0) {\n            pOVar36 = pOVar31;\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n            pOVar36 = pOVar31;\n          }" { (expression_statement "pOVar36 = pOVar31;" (assignment_expression "pOVar36 = pOVar31" identifier = identifier) ;) })) }))))) (expression_statement "uVar44 = CONCAT44(uVar13,pOVar42);" (assignment_expression "uVar44 = CONCAT44(uVar13,pOVar42)" identifier = (call_expression "CONCAT44(uVar13,pOVar42)" identifier (argument_list "(uVar13,pOVar42)" ( identifier , identifier )))) ;) (if_statement "if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;" if (parenthesized_expression "(*(int *)&pOVar42->field_0x20 << 2 < 0)" ( (binary_expression "*(int *)&pOVar42->field_0x20 << 2 < 0" (binary_expression "*(int *)&pOVar42->field_0x20 << 2" (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier)))) << number_literal) < number_literal) )) (goto_statement "goto LAB_00187b94;" goto statement_identifier ;)) (expression_statement "bVar1 = pOVar42->field_0x20;" (assignment_expression "bVar1 = pOVar42->field_0x20" identifier = (field_expression "pOVar42->field_0x20" identifier -> field_identifier)) ;) (expression_statement "*(Output_data **)&pOVar42->offset_ = pOVar36;" (assignment_expression "*(Output_data **)&pOVar42->offset_ = pOVar36" (pointer_expression "*(Output_data **)&pOVar42->offset_" * (cast_expression "(Output_data **)&pOVar42->offset_" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pOVar42->offset_" & (field_expression "pOVar42->offset_" identifier -> field_identifier)))) = identifier) ;) (expression_statement "*(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;" (assignment_expression "*(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35" (pointer_expression "*(Output_data **)((int)&pOVar42->offset_ + 4)" * (cast_expression "(Output_data **)((int)&pOVar42->offset_ + 4)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&pOVar42->offset_ + 4)" ( (binary_expression "(int)&pOVar42->offset_ + 4" (cast_expression "(int)&pOVar42->offset_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar42->offset_" & (field_expression "pOVar42->offset_" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "pOVar42->field_0x20 = bVar1 & 0xdf | 0x20;" (assignment_expression "pOVar42->field_0x20 = bVar1 & 0xdf | 0x20" (field_expression "pOVar42->field_0x20" identifier -> field_identifier) = (binary_expression "bVar1 & 0xdf | 0x20" (binary_expression "bVar1 & 0xdf" identifier & number_literal) | number_literal)) ;) (expression_statement "pOVar19 = pOVar35;" (assignment_expression "pOVar19 = pOVar35" identifier = identifier) ;) (expression_statement "pOVar26 = pOVar36;" (assignment_expression "pOVar26 = pOVar36" identifier = identifier) ;) (if_statement "if (-1 < *(int *)&pOVar42->field_0x20 << 1) {\n          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n          iVar12 = *(int *)&pOVar42->field_0x20;\n          local_70 = pOVar42;\n          goto joined_r0x001878b8;\n        }" if (parenthesized_expression "(-1 < *(int *)&pOVar42->field_0x20 << 1)" ( (binary_expression "-1 < *(int *)&pOVar42->field_0x20 << 1" number_literal < (binary_expression "*(int *)&pOVar42->field_0x20 << 1" (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier)))) << number_literal)) )) (compound_statement "{\n          (*pOVar42->_vptr_Output_data[0xe])(pOVar42);\n          iVar12 = *(int *)&pOVar42->field_0x20;\n          local_70 = pOVar42;\n          goto joined_r0x001878b8;\n        }" { (expression_statement "(*pOVar42->_vptr_Output_data[0xe])(pOVar42);" (call_expression "(*pOVar42->_vptr_Output_data[0xe])(pOVar42)" (parenthesized_expression "(*pOVar42->_vptr_Output_data[0xe])" ( (pointer_expression "*pOVar42->_vptr_Output_data[0xe]" * (subscript_expression "pOVar42->_vptr_Output_data[0xe]" (field_expression "pOVar42->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) )) (argument_list "(pOVar42)" ( identifier ))) ;) (expression_statement "iVar12 = *(int *)&pOVar42->field_0x20;" (assignment_expression "iVar12 = *(int *)&pOVar42->field_0x20" identifier = (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier))))) ;) (expression_statement "local_70 = pOVar42;" (assignment_expression "local_70 = pOVar42" identifier = identifier) ;) (goto_statement "goto joined_r0x001878b8;" goto statement_identifier ;) })) (labeled_statement "LAB_0018736c:\n        pOVar36 = pOVar26;" statement_identifier : (expression_statement "pOVar36 = pOVar26;" (assignment_expression "pOVar36 = pOVar26" identifier = identifier) ;)) (expression_statement "iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14);" (assignment_expression "iVar12 = (*(code *)PTR_incremental_update_00432eb0)(*piVar14)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)(*piVar14)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*piVar14)" ( (pointer_expression "*piVar14" * identifier) )))) ;) (expression_statement "pOVar35 = pOVar19;" (assignment_expression "pOVar35 = pOVar19" identifier = identifier) ;) (if_statement "if (iVar12 == 0) {\nLAB_00187410:\n          pOVar42 = *ppOVar34;\n        }\n        else {\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00187410:\n          pOVar42 = *ppOVar34;\n        }" { (labeled_statement "LAB_00187410:\n          pOVar42 = *ppOVar34;" statement_identifier : (expression_statement "pOVar42 = *ppOVar34;" (assignment_expression "pOVar42 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;)) }) (else_clause "else {\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }" else (compound_statement "{\n          puVar16 = (undefined4 *)*piVar14;\n          pOVar42 = *ppOVar34;\n          if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }\n        }" { (expression_statement "puVar16 = (undefined4 *)*piVar14;" (assignment_expression "puVar16 = (undefined4 *)*piVar14" identifier = (cast_expression "(undefined4 *)*piVar14" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) (expression_statement "pOVar42 = *ppOVar34;" (assignment_expression "pOVar42 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (if_statement "if ((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)) {\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }" if (parenthesized_expression "((puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0))" ( (binary_expression "(puVar16[2] != 0) && ((puVar16[5] & 0x10) != 0)" (parenthesized_expression "(puVar16[2] != 0)" ( (binary_expression "puVar16[2] != 0" (subscript_expression "puVar16[2]" identifier [ number_literal ]) != number_literal) )) && (parenthesized_expression "((puVar16[5] & 0x10) != 0)" ( (binary_expression "(puVar16[5] & 0x10) != 0" (parenthesized_expression "(puVar16[5] & 0x10)" ( (binary_expression "puVar16[5] & 0x10" (subscript_expression "puVar16[5]" identifier [ number_literal ]) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n            uVar38 = *puVar16;\n            if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;\n            oVar5 = pOVar42->data_size_;\n            iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);\n            pOVar42 = pOVar8;\n            if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }\n            local_90 = pOVar42;\n            (*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);\n            goto LAB_00187410;\n          }" { (expression_statement "uVar38 = *puVar16;" (assignment_expression "uVar38 = *puVar16" identifier = (pointer_expression "*puVar16" * identifier)) ;) (if_statement "if (-1 < *(int *)&pOVar42->field_0x20 << 1) goto LAB_00187b5c;" if (parenthesized_expression "(-1 < *(int *)&pOVar42->field_0x20 << 1)" ( (binary_expression "-1 < *(int *)&pOVar42->field_0x20 << 1" number_literal < (binary_expression "*(int *)&pOVar42->field_0x20 << 1" (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier)))) << number_literal)) )) (goto_statement "goto LAB_00187b5c;" goto statement_identifier ;)) (expression_statement "oVar5 = pOVar42->data_size_;" (assignment_expression "oVar5 = pOVar42->data_size_" identifier = (field_expression "pOVar42->data_size_" identifier -> field_identifier)) ;) (expression_statement "iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42);" (assignment_expression "iVar12 = (*pOVar42->_vptr_Output_data[9])(pOVar42)" identifier = (call_expression "(*pOVar42->_vptr_Output_data[9])(pOVar42)" (parenthesized_expression "(*pOVar42->_vptr_Output_data[9])" ( (pointer_expression "*pOVar42->_vptr_Output_data[9]" * (subscript_expression "pOVar42->_vptr_Output_data[9]" (field_expression "pOVar42->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) )) (argument_list "(pOVar42)" ( identifier )))) ;) (expression_statement "pOVar42 = pOVar8;" (assignment_expression "pOVar42 = pOVar8" identifier = identifier) ;) (if_statement "if (iVar12 != 0) {\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              pOVar42 = *(Output_data **)(iVar12 + 0x24);\n            }" { (expression_statement "iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);" (assignment_expression "iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34)" identifier = (call_expression "(*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34)" (parenthesized_expression "(*(*ppOVar34)->_vptr_Output_data[9])" ( (pointer_expression "*(*ppOVar34)->_vptr_Output_data[9]" * (subscript_expression "(*ppOVar34)->_vptr_Output_data[9]" (field_expression "(*ppOVar34)->_vptr_Output_data" (parenthesized_expression "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )) -> field_identifier) [ number_literal ])) )) (argument_list "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )))) ;) (expression_statement "pOVar42 = *(Output_data **)(iVar12 + 0x24);" (assignment_expression "pOVar42 = *(Output_data **)(iVar12 + 0x24)" identifier = (pointer_expression "*(Output_data **)(iVar12 + 0x24)" * (cast_expression "(Output_data **)(iVar12 + 0x24)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar12 + 0x24)" ( (binary_expression "iVar12 + 0x24" identifier + number_literal) ))))) ;) })) (expression_statement "local_90 = pOVar42;" (assignment_expression "local_90 = pOVar42" identifier = identifier) ;) (expression_statement "(*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5);" (call_expression "(*(code *)PTR_debug_00432ce0)(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5)" (parenthesized_expression "(*(code *)PTR_debug_00432ce0)" ( (pointer_expression "*(code *)PTR_debug_00432ce0" * (cast_expression "(code *)PTR_debug_00432ce0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar38,puVar40 + 0x5b24,pOVar33,(int)oVar5)" ( identifier , (binary_expression "puVar40 + 0x5b24" identifier + number_literal) , identifier , (cast_expression "(int)oVar5" ( (type_descriptor "int" primitive_type) ) identifier) ))) ;) (goto_statement "goto LAB_00187410;" goto statement_identifier ;) })) }))) (if_statement "if (iVar10 == 0) {\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }\n        }\n        else {\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }\n        }" { (if_statement "if (*(int *)&pOVar42->field_0x20 << 1 < 0) {\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }" if (parenthesized_expression "(*(int *)&pOVar42->field_0x20 << 1 < 0)" ( (binary_expression "*(int *)&pOVar42->field_0x20 << 1 < 0" (binary_expression "*(int *)&pOVar42->field_0x20 << 1" (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier)))) << number_literal) < number_literal) )) (compound_statement "{\n            pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }\n            pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);\n            if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }\n            goto LAB_00187458;\n          }" { (expression_statement "pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);" (assignment_expression "pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_)" identifier = (cast_expression "(Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_)" ( (binary_expression "(int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_" (cast_expression "(int)&pOVar33->_vptr_Output_data" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar33->_vptr_Output_data" & (field_expression "pOVar33->_vptr_Output_data" identifier -> field_identifier))) + (cast_expression "(int)pOVar42->data_size_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar42->data_size_" identifier -> field_identifier))) )))) ;) (if_statement "if (iVar9 == 0) {\n              pOVar35 = pOVar19;\n            }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n              pOVar35 = pOVar19;\n            }" { (expression_statement "pOVar35 = pOVar19;" (assignment_expression "pOVar35 = pOVar19" identifier = identifier) ;) })) (expression_statement "pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);" (assignment_expression "pOVar31 = (Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_)" identifier = (cast_expression "(Output_data *)\n                      ((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_)" ( (binary_expression "(int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_" (binary_expression "(int)&pOVar31->_vptr_Output_data +\n                      (uint)(pOVar19 < pOVar33)" (cast_expression "(int)&pOVar31->_vptr_Output_data" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar31->_vptr_Output_data" & (field_expression "pOVar31->_vptr_Output_data" identifier -> field_identifier))) + (call_expression "(uint)(pOVar19 < pOVar33)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pOVar19 < pOVar33)" ( (binary_expression "pOVar19 < pOVar33" identifier < identifier) )))) + (pointer_expression "*(int *)&pOVar42->data_size_" * (cast_expression "(int *)&pOVar42->data_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->data_size_" & (field_expression "pOVar42->data_size_" identifier -> field_identifier))))) )))) ;) (if_statement "if (iVar9 == 0) {\n              pOVar36 = pOVar31;\n            }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n              pOVar36 = pOVar31;\n            }" { (expression_statement "pOVar36 = pOVar31;" (assignment_expression "pOVar36 = pOVar31" identifier = identifier) ;) })) (goto_statement "goto LAB_00187458;" goto statement_identifier ;) })) }) (else_clause "else {\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }" else (compound_statement "{\n          pOVar19 = pOVar33;\n          if (iVar9 != 0) goto LAB_00187458;\n          if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;\n        }" { (expression_statement "pOVar19 = pOVar33;" (assignment_expression "pOVar19 = pOVar33" identifier = identifier) ;) (if_statement "if (iVar9 != 0) goto LAB_00187458;" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00187458;" goto statement_identifier ;)) (if_statement "if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto code_r0x00187434;" if (parenthesized_expression "(*(int *)&pOVar42->field_0x20 << 1 < 0)" ( (binary_expression "*(int *)&pOVar42->field_0x20 << 1 < 0" (binary_expression "*(int *)&pOVar42->field_0x20 << 1" (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier)))) << number_literal) < number_literal) )) (goto_statement "goto code_r0x00187434;" goto statement_identifier ;)) }))) (labeled_statement "LAB_00187b5c:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);" statement_identifier : (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,PTR_s_alize_xindex_004323b4 + 0x7894)" (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 + 0x7894)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7894" identifier + number_literal) ))) ;)) (labeled_statement "LAB_00187b74:\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)\n        ;" statement_identifier : (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)\n        ;" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)" (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,0x142,PTR_s_alize_xindex_004323b4 + 0x7540)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7540" identifier + number_literal) ))) ;)) (labeled_statement "LAB_00187b94:\n        do {\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        } while( true );" statement_identifier : (do_statement "do {\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        } while( true );" do (compound_statement "{\n          uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);\nLAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;\nLAB_0018723c:\n          *in_tls = true;\nLAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;\n          iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n          if (iVar12 == 0) goto LAB_00187268;\nLAB_00187604:\n          local_70 = (Output_data *)uVar44;\n          pOVar36 = *ppOVar34;\n          if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }\n          pOVar35 = *(Output_data **)&pOVar36->data_size_;\n          oVar5 = pOVar36->data_size_;\n          local_8c = local_70;\n          local_90 = (Output_data *)(uVar44 >> 0x20);\n          local_88 = pOVar15;\n          local_84 = pOVar18;\n          uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);\n          pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n          pOVar33 = (Output_data *)uVar45;\n          if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }" { (expression_statement "uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000);" (assignment_expression "uVar44 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000)" (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,0x14b,\n                              PTR_s_alize_xindex_004323b4 + 30000)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 30000" identifier + number_literal) )))) ;) (labeled_statement "LAB_00187bac:\n          if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;" statement_identifier : (if_statement "if ((Output_data *)uVar44 < local_70) goto LAB_00187bbc;" if (parenthesized_expression "((Output_data *)uVar44 < local_70)" ( (binary_expression "(Output_data *)uVar44 < local_70" (cast_expression "(Output_data *)uVar44" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) < identifier) )) (goto_statement "goto LAB_00187bbc;" goto statement_identifier ;))) (labeled_statement "LAB_0018723c:\n          *in_tls = true;" statement_identifier : (expression_statement "*in_tls = true;" (assignment_expression "*in_tls = true" (pointer_expression "*in_tls" * identifier) = true) ;)) (labeled_statement "LAB_00187254:\n          piVar14 = (int *)PTR_parameters_00432be0;" statement_identifier : (expression_statement "piVar14 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar14 = (int *)PTR_parameters_00432be0" identifier = (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (expression_statement "iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar12 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" ( (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" * (cast_expression "(undefined4 *)PTR_parameters_00432be0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )))) ;) (if_statement "if (iVar12 == 0) goto LAB_00187268;" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00187268;" goto statement_identifier ;)) (labeled_statement "LAB_00187604:\n          local_70 = (Output_data *)uVar44;" statement_identifier : (expression_statement "local_70 = (Output_data *)uVar44;" (assignment_expression "local_70 = (Output_data *)uVar44" identifier = (cast_expression "(Output_data *)uVar44" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (expression_statement "pOVar36 = *ppOVar34;" (assignment_expression "pOVar36 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (if_statement "if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }" if (parenthesized_expression "(-1 < *(int *)&pOVar36->field_0x20 << 1)" ( (binary_expression "-1 < *(int *)&pOVar36->field_0x20 << 1" number_literal < (binary_expression "*(int *)&pOVar36->field_0x20 << 1" (pointer_expression "*(int *)&pOVar36->field_0x20" * (cast_expression "(int *)&pOVar36->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->field_0x20" & (field_expression "pOVar36->field_0x20" identifier -> field_identifier)))) << number_literal)) )) (compound_statement "{\n            (*pOVar36->_vptr_Output_data[0xd])(pOVar36);\n            pOVar36 = *ppOVar34;\n          }" { (expression_statement "(*pOVar36->_vptr_Output_data[0xd])(pOVar36);" (call_expression "(*pOVar36->_vptr_Output_data[0xd])(pOVar36)" (parenthesized_expression "(*pOVar36->_vptr_Output_data[0xd])" ( (pointer_expression "*pOVar36->_vptr_Output_data[0xd]" * (subscript_expression "pOVar36->_vptr_Output_data[0xd]" (field_expression "pOVar36->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) )) (argument_list "(pOVar36)" ( identifier ))) ;) (expression_statement "pOVar36 = *ppOVar34;" (assignment_expression "pOVar36 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) })) (expression_statement "pOVar35 = *(Output_data **)&pOVar36->data_size_;" (assignment_expression "pOVar35 = *(Output_data **)&pOVar36->data_size_" identifier = (pointer_expression "*(Output_data **)&pOVar36->data_size_" * (cast_expression "(Output_data **)&pOVar36->data_size_" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pOVar36->data_size_" & (field_expression "pOVar36->data_size_" identifier -> field_identifier))))) ;) (expression_statement "oVar5 = pOVar36->data_size_;" (assignment_expression "oVar5 = pOVar36->data_size_" identifier = (field_expression "pOVar36->data_size_" identifier -> field_identifier)) ;) (expression_statement "local_8c = local_70;" (assignment_expression "local_8c = local_70" identifier = identifier) ;) (expression_statement "local_90 = (Output_data *)(uVar44 >> 0x20);" (assignment_expression "local_90 = (Output_data *)(uVar44 >> 0x20)" identifier = (cast_expression "(Output_data *)(uVar44 >> 0x20)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar44 >> 0x20)" ( (binary_expression "uVar44 >> 0x20" identifier >> number_literal) )))) ;) (expression_statement "local_88 = pOVar15;" (assignment_expression "local_88 = pOVar15" identifier = identifier) ;) (expression_statement "local_84 = pOVar18;" (assignment_expression "local_84 = pOVar18" identifier = identifier) ;) (expression_statement "uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_);" (assignment_expression "uVar45 = (*(code *)PTR_allocate_00432eb4)(&layout->free_list_)" identifier = (call_expression "(*(code *)PTR_allocate_00432eb4)(&layout->free_list_)" (parenthesized_expression "(*(code *)PTR_allocate_00432eb4)" ( (pointer_expression "*(code *)PTR_allocate_00432eb4" * (cast_expression "(code *)PTR_allocate_00432eb4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&layout->free_list_)" ( (pointer_expression "&layout->free_list_" & (field_expression "layout->free_list_" identifier -> field_identifier)) )))) ;) (expression_statement "pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);" (assignment_expression "pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20)" identifier = (cast_expression "(Output_data *)((ulonglong)uVar45 >> 0x20)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)uVar45 >> 0x20)" ( (binary_expression "(ulonglong)uVar45 >> 0x20" (cast_expression "(ulonglong)uVar45" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "pOVar33 = (Output_data *)uVar45;" (assignment_expression "pOVar33 = (Output_data *)uVar45" identifier = (cast_expression "(Output_data *)uVar45" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (pOVar31 == (Output_data *)0xffffffff) goto LAB_00187acc;" if (parenthesized_expression "(pOVar31 == (Output_data *)0xffffffff)" ( (binary_expression "pOVar31 == (Output_data *)0xffffffff" identifier == (cast_expression "(Output_data *)0xffffffff" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00187acc;" goto statement_identifier ;)) (while_statement "while( true ) {\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n            pOVar36 = *ppOVar34;\n            if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;\n            bVar1 = pOVar36->field_0x20;\n            pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));\n            pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;\n            if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;\n            *(Output_data **)&pOVar36->offset_ = pOVar31;\n            *(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;\n            pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;\n            if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }\n            if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;\n            iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);\n            if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }" { (expression_statement "pOVar36 = *ppOVar34;" (assignment_expression "pOVar36 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (if_statement "if (*(int *)&pOVar36->field_0x20 < 0) goto LAB_00187b74;" if (parenthesized_expression "(*(int *)&pOVar36->field_0x20 < 0)" ( (binary_expression "*(int *)&pOVar36->field_0x20 < 0" (pointer_expression "*(int *)&pOVar36->field_0x20" * (cast_expression "(int *)&pOVar36->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->field_0x20" & (field_expression "pOVar36->field_0x20" identifier -> field_identifier)))) < number_literal) )) (goto_statement "goto LAB_00187b74;" goto statement_identifier ;)) (expression_statement "bVar1 = pOVar36->field_0x20;" (assignment_expression "bVar1 = pOVar36->field_0x20" identifier = (field_expression "pOVar36->field_0x20" identifier -> field_identifier)) ;) (expression_statement "pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));" (assignment_expression "pOVar36->address_ =\n                 addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" (field_expression "pOVar36->address_" identifier -> field_identifier) = (binary_expression "addr + CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" identifier + (call_expression "CONCAT44((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" identifier (argument_list "((undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" ( (cast_expression "(undefined *)\n                                 ((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15))" ( (binary_expression "(int)pOVar31 +\n                                 (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)" (cast_expression "(int)pOVar31" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15)" ( (binary_expression "-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                                 (int)pOVar15" (unary_expression "-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18))" - (call_expression "(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18))" ( (binary_expression "pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)" identifier < (cast_expression "(Output_data *)((int)pOVar33 - (int)pOVar18)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar33 - (int)pOVar18)" ( (binary_expression "(int)pOVar33 - (int)pOVar18" (cast_expression "(int)pOVar33" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pOVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )))) )))) - (cast_expression "(int)pOVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))) , (cast_expression "(Output_data *)((int)pOVar33 - (int)pOVar18)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar33 - (int)pOVar18)" ( (binary_expression "(int)pOVar33 - (int)pOVar18" (cast_expression "(int)pOVar33" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pOVar18" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))))) ;) (expression_statement "pOVar36->field_0x20 = bVar1 & 0x7f | 0x80;" (assignment_expression "pOVar36->field_0x20 = bVar1 & 0x7f | 0x80" (field_expression "pOVar36->field_0x20" identifier -> field_identifier) = (binary_expression "bVar1 & 0x7f | 0x80" (binary_expression "bVar1 & 0x7f" identifier & number_literal) | number_literal)) ;) (if_statement "if (*(int *)&pOVar36->field_0x20 << 2 < 0) break;" if (parenthesized_expression "(*(int *)&pOVar36->field_0x20 << 2 < 0)" ( (binary_expression "*(int *)&pOVar36->field_0x20 << 2 < 0" (binary_expression "*(int *)&pOVar36->field_0x20 << 2" (pointer_expression "*(int *)&pOVar36->field_0x20" * (cast_expression "(int *)&pOVar36->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->field_0x20" & (field_expression "pOVar36->field_0x20" identifier -> field_identifier)))) << number_literal) < number_literal) )) (break_statement "break;" break ;)) (expression_statement "*(Output_data **)&pOVar36->offset_ = pOVar31;" (assignment_expression "*(Output_data **)&pOVar36->offset_ = pOVar31" (pointer_expression "*(Output_data **)&pOVar36->offset_" * (cast_expression "(Output_data **)&pOVar36->offset_" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pOVar36->offset_" & (field_expression "pOVar36->offset_" identifier -> field_identifier)))) = identifier) ;) (expression_statement "*(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33;" (assignment_expression "*(Output_data **)((int)&pOVar36->offset_ + 4) = pOVar33" (pointer_expression "*(Output_data **)((int)&pOVar36->offset_ + 4)" * (cast_expression "(Output_data **)((int)&pOVar36->offset_ + 4)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&pOVar36->offset_ + 4)" ( (binary_expression "(int)&pOVar36->offset_ + 4" (cast_expression "(int)&pOVar36->offset_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar36->offset_" & (field_expression "pOVar36->offset_" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0;" (assignment_expression "pOVar36->field_0x20 = bVar1 & 0x5f | 0xa0" (field_expression "pOVar36->field_0x20" identifier -> field_identifier) = (binary_expression "bVar1 & 0x5f | 0xa0" (binary_expression "bVar1 & 0x5f" identifier & number_literal) | number_literal)) ;) (if_statement "if (-1 < *(int *)&pOVar36->field_0x20 << 1) {\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }" if (parenthesized_expression "(-1 < *(int *)&pOVar36->field_0x20 << 1)" ( (binary_expression "-1 < *(int *)&pOVar36->field_0x20 << 1" number_literal < (binary_expression "*(int *)&pOVar36->field_0x20 << 1" (pointer_expression "*(int *)&pOVar36->field_0x20" * (cast_expression "(int *)&pOVar36->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->field_0x20" & (field_expression "pOVar36->field_0x20" identifier -> field_identifier)))) << number_literal)) )) (compound_statement "{\n              (*pOVar36->_vptr_Output_data[0xe])(pOVar36);\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;\n              pOVar36 = *ppOVar34;\n              if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;\n            }" { (expression_statement "(*pOVar36->_vptr_Output_data[0xe])(pOVar36);" (call_expression "(*pOVar36->_vptr_Output_data[0xe])(pOVar36)" (parenthesized_expression "(*pOVar36->_vptr_Output_data[0xe])" ( (pointer_expression "*pOVar36->_vptr_Output_data[0xe]" * (subscript_expression "pOVar36->_vptr_Output_data[0xe]" (field_expression "pOVar36->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) )) (argument_list "(pOVar36)" ( identifier ))) ;) (if_statement "if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001878c0;" if (parenthesized_expression "(-1 < *(int *)&pOVar36->field_0x20 << 1)" ( (binary_expression "-1 < *(int *)&pOVar36->field_0x20 << 1" number_literal < (binary_expression "*(int *)&pOVar36->field_0x20 << 1" (pointer_expression "*(int *)&pOVar36->field_0x20" * (cast_expression "(int *)&pOVar36->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->field_0x20" & (field_expression "pOVar36->field_0x20" identifier -> field_identifier)))) << number_literal)) )) (goto_statement "goto LAB_001878c0;" goto statement_identifier ;)) (expression_statement "pOVar36 = *ppOVar34;" (assignment_expression "pOVar36 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (if_statement "if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_00187b5c;" if (parenthesized_expression "(-1 < *(int *)&pOVar36->field_0x20 << 1)" ( (binary_expression "-1 < *(int *)&pOVar36->field_0x20 << 1" number_literal < (binary_expression "*(int *)&pOVar36->field_0x20 << 1" (pointer_expression "*(int *)&pOVar36->field_0x20" * (cast_expression "(int *)&pOVar36->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->field_0x20" & (field_expression "pOVar36->field_0x20" identifier -> field_identifier)))) << number_literal)) )) (goto_statement "goto LAB_00187b5c;" goto statement_identifier ;)) })) (if_statement "if (((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))) goto LAB_0018736c;" if (parenthesized_expression "(((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0))))" ( (binary_expression "((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35) &&\n               ((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))" (parenthesized_expression "((int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35)" ( (binary_expression "(int)*(Output_data **)&pOVar36->data_size_ <= (int)pOVar35" (cast_expression "(int)*(Output_data **)&pOVar36->data_size_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(Output_data **)&pOVar36->data_size_" * (cast_expression "(Output_data **)&pOVar36->data_size_" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pOVar36->data_size_" & (field_expression "pOVar36->data_size_" identifier -> field_identifier))))) <= (cast_expression "(int)pOVar35" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "((pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)))" ( (parenthesized_expression "(pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0))" ( (comma_expression "pOVar19 = pOVar33, pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)" (assignment_expression "pOVar19 = pOVar33" identifier = identifier) , (comma_expression "pOVar26 = pOVar31,\n                *(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)" (assignment_expression "pOVar26 = pOVar31" identifier = identifier) , (binary_expression "*(Output_data **)&pOVar36->data_size_ != pOVar35 ||\n                (pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)" (binary_expression "*(Output_data **)&pOVar36->data_size_ != pOVar35" (pointer_expression "*(Output_data **)&pOVar36->data_size_" * (cast_expression "(Output_data **)&pOVar36->data_size_" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pOVar36->data_size_" & (field_expression "pOVar36->data_size_" identifier -> field_identifier)))) != identifier) || (parenthesized_expression "(pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0)" ( (comma_expression "pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_),\n                pOVar35 == (Output_data *)0x0" (assignment_expression "pOVar35 = (Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_)" identifier = (cast_expression "(Output_data *)(uint)((uint)oVar5 < (uint)pOVar36->data_size_)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(uint)((uint)oVar5 < (uint)pOVar36->data_size_)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uint)oVar5 < (uint)pOVar36->data_size_)" ( (binary_expression "(uint)oVar5 < (uint)pOVar36->data_size_" (cast_expression "(uint)oVar5" ( (type_descriptor "uint" type_identifier) ) identifier) < (cast_expression "(uint)pOVar36->data_size_" ( (type_descriptor "uint" type_identifier) ) (field_expression "pOVar36->data_size_" identifier -> field_identifier))) ))))) , (binary_expression "pOVar35 == (Output_data *)0x0" identifier == (cast_expression "(Output_data *)0x0" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))))) )) ))) )) (goto_statement "goto LAB_0018736c;" goto statement_identifier ;)) (expression_statement "iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36);" (assignment_expression "iVar12 = (*pOVar36->_vptr_Output_data[9])(pOVar36)" identifier = (call_expression "(*pOVar36->_vptr_Output_data[9])(pOVar36)" (parenthesized_expression "(*pOVar36->_vptr_Output_data[9])" ( (pointer_expression "*pOVar36->_vptr_Output_data[9]" * (subscript_expression "pOVar36->_vptr_Output_data[9]" (field_expression "pOVar36->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) )) (argument_list "(pOVar36)" ( identifier )))) ;) (if_statement "if (iVar12 == 0) {\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n              uVar38 = 0x11f6;\n              goto LAB_00187b08;\n            }" { (expression_statement "uVar38 = 0x11f6;" (assignment_expression "uVar38 = 0x11f6" identifier = number_literal) ;) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c;" (assignment_expression "puVar37 = PTR_s_alize_xindex_004323b4 + -0x299c" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + -0x299c" identifier + number_literal)) ;) (while_statement "while( true ) {\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n              uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));\n              uVar45 = CONCAT44(uVar38,extraout_v1);\nLAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);\n              if ((Output_data *)uVar45 != pOVar31) break;\n              iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);\n              if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }\n              puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }" { (expression_statement "uVar38 = (*(code *)PTR_gettext_00436818)(puVar37);" (assignment_expression "uVar38 = (*(code *)PTR_gettext_00436818)(puVar37)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar37)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar37)" ( identifier )))) ;) (expression_statement "iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);" (assignment_expression "iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34)" identifier = (call_expression "(*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34)" (parenthesized_expression "(*(*ppOVar34)->_vptr_Output_data[9])" ( (pointer_expression "*(*ppOVar34)->_vptr_Output_data[9]" * (subscript_expression "(*ppOVar34)->_vptr_Output_data[9]" (field_expression "(*ppOVar34)->_vptr_Output_data" (parenthesized_expression "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )) -> field_identifier) [ number_literal ])) )) (argument_list "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )))) ;) (expression_statement "(*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24));" (call_expression "(*(code *)PTR_gold_fallback_00432ebc)(uVar38,*(undefined4 *)(iVar12 + 0x24))" (parenthesized_expression "(*(code *)PTR_gold_fallback_00432ebc)" ( (pointer_expression "*(code *)PTR_gold_fallback_00432ebc" * (cast_expression "(code *)PTR_gold_fallback_00432ebc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar38,*(undefined4 *)(iVar12 + 0x24))" ( identifier , (pointer_expression "*(undefined4 *)(iVar12 + 0x24)" * (cast_expression "(undefined4 *)(iVar12 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + 0x24)" ( (binary_expression "iVar12 + 0x24" identifier + number_literal) )))) ))) ;) (expression_statement "uVar45 = CONCAT44(uVar38,extraout_v1);" (assignment_expression "uVar45 = CONCAT44(uVar38,extraout_v1)" identifier = (call_expression "CONCAT44(uVar38,extraout_v1)" identifier (argument_list "(uVar38,extraout_v1)" ( identifier , identifier )))) ;) (labeled_statement "LAB_00187acc:\n              pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);" statement_identifier : (expression_statement "pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20);" (assignment_expression "pOVar31 = (Output_data *)((ulonglong)uVar45 >> 0x20)" identifier = (cast_expression "(Output_data *)((ulonglong)uVar45 >> 0x20)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)uVar45 >> 0x20)" ( (binary_expression "(ulonglong)uVar45 >> 0x20" (cast_expression "(ulonglong)uVar45" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;)) (if_statement "if ((Output_data *)uVar45 != pOVar31) break;" if (parenthesized_expression "((Output_data *)uVar45 != pOVar31)" ( (binary_expression "(Output_data *)uVar45 != pOVar31" (cast_expression "(Output_data *)uVar45" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != identifier) )) (break_statement "break;" break ;)) (expression_statement "iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34);" (assignment_expression "iVar12 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34)" identifier = (call_expression "(*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34)" (parenthesized_expression "(*(*ppOVar34)->_vptr_Output_data[9])" ( (pointer_expression "*(*ppOVar34)->_vptr_Output_data[9]" * (subscript_expression "(*ppOVar34)->_vptr_Output_data[9]" (field_expression "(*ppOVar34)->_vptr_Output_data" (parenthesized_expression "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )) -> field_identifier) [ number_literal ])) )) (argument_list "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )))) ;) (if_statement "if (iVar12 == 0) {\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n                do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );\n              }" { (do_statement "do {\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                } while( true );" do (compound_statement "{\n                  uVar38 = 0x11ee;\nLAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);\n                }" { (expression_statement "uVar38 = 0x11ee;" (assignment_expression "uVar38 = 0x11ee" identifier = number_literal) ;) (labeled_statement "LAB_00187b08:\n                  (*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);" statement_identifier : (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                            (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014)" (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 + 0x59f0,uVar38,\n                             PTR_s_alize_xindex_004323b4 + 0x7014)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + 0x59f0" identifier + number_literal) , identifier , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7014" identifier + number_literal) ))) ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0;" (assignment_expression "puVar37 = PTR_s_alize_xindex_004323b4 + -0x29e0" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + -0x29e0" identifier + number_literal)) ;) })) })) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (labeled_statement "LAB_00187bd4:\n      puVar22 = PTR_s_alize_xindex_004323b4 + 0x7850;" statement_identifier : (expression_statement "puVar22 = PTR_s_alize_xindex_004323b4 + 0x7850;" (assignment_expression "puVar22 = PTR_s_alize_xindex_004323b4 + 0x7850" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7850" identifier + number_literal)) ;)) (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n                (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,puVar22);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,puVar22)" (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,0xc5,puVar22)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , identifier ))) ;) }) (else_clause "else {\n      pOVar42 = *ppOVar34;\n      puVar22 = PTR_s_alize_xindex_004323b4;\n      if (*(int *)&pOVar42->field_0x20 << 2 < 0) {\n        pOVar31 = *(Output_data **)&pOVar42->offset_;\n        pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);\n        pOVar19 = pOVar33;\n        pOVar26 = pOVar31;\n        goto LAB_0018736c;\n      }\n    }" else (compound_statement "{\n      pOVar42 = *ppOVar34;\n      puVar22 = PTR_s_alize_xindex_004323b4;\n      if (*(int *)&pOVar42->field_0x20 << 2 < 0) {\n        pOVar31 = *(Output_data **)&pOVar42->offset_;\n        pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);\n        pOVar19 = pOVar33;\n        pOVar26 = pOVar31;\n        goto LAB_0018736c;\n      }\n    }" { (expression_statement "pOVar42 = *ppOVar34;" (assignment_expression "pOVar42 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (expression_statement "puVar22 = PTR_s_alize_xindex_004323b4;" (assignment_expression "puVar22 = PTR_s_alize_xindex_004323b4" identifier = identifier) ;) (if_statement "if (*(int *)&pOVar42->field_0x20 << 2 < 0) {\n        pOVar31 = *(Output_data **)&pOVar42->offset_;\n        pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);\n        pOVar19 = pOVar33;\n        pOVar26 = pOVar31;\n        goto LAB_0018736c;\n      }" if (parenthesized_expression "(*(int *)&pOVar42->field_0x20 << 2 < 0)" ( (binary_expression "*(int *)&pOVar42->field_0x20 << 2 < 0" (binary_expression "*(int *)&pOVar42->field_0x20 << 2" (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier)))) << number_literal) < number_literal) )) (compound_statement "{\n        pOVar31 = *(Output_data **)&pOVar42->offset_;\n        pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);\n        pOVar19 = pOVar33;\n        pOVar26 = pOVar31;\n        goto LAB_0018736c;\n      }" { (expression_statement "pOVar31 = *(Output_data **)&pOVar42->offset_;" (assignment_expression "pOVar31 = *(Output_data **)&pOVar42->offset_" identifier = (pointer_expression "*(Output_data **)&pOVar42->offset_" * (cast_expression "(Output_data **)&pOVar42->offset_" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pOVar42->offset_" & (field_expression "pOVar42->offset_" identifier -> field_identifier))))) ;) (expression_statement "pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4);" (assignment_expression "pOVar33 = *(Output_data **)((int)&pOVar42->offset_ + 4)" identifier = (pointer_expression "*(Output_data **)((int)&pOVar42->offset_ + 4)" * (cast_expression "(Output_data **)((int)&pOVar42->offset_ + 4)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&pOVar42->offset_ + 4)" ( (binary_expression "(int)&pOVar42->offset_ + 4" (cast_expression "(int)&pOVar42->offset_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar42->offset_" & (field_expression "pOVar42->offset_" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "pOVar19 = pOVar33;" (assignment_expression "pOVar19 = pOVar33" identifier = identifier) ;) (expression_statement "pOVar26 = pOVar31;" (assignment_expression "pOVar26 = pOVar31" identifier = identifier) ;) (goto_statement "goto LAB_0018736c;" goto statement_identifier ;) })) }))) (expression_statement "uVar11 = 0xe3;" (assignment_expression "uVar11 = 0xe3" identifier = number_literal) ;) (expression_statement "pcVar43 = set_offset;" (assignment_expression "pcVar43 = set_offset" identifier = identifier) ;) (expression_statement "this_00 = (Output_segment *)(PTR_s_alize_xindex_004323b4 + -0x4fe0);" (assignment_expression "this_00 = (Output_segment *)(PTR_s_alize_xindex_004323b4 + -0x4fe0)" identifier = (cast_expression "(Output_segment *)(PTR_s_alize_xindex_004323b4 + -0x4fe0)" ( (type_descriptor "Output_segment *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_alize_xindex_004323b4 + -0x4fe0)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) )))) ;) (expression_statement "puVar40 = PTR_do_gold_unreachable_004323c4;" (assignment_expression "puVar40 = PTR_do_gold_unreachable_004323c4" identifier = identifier) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)(this_00,0xe3,puVar22 + 0x7818);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)(this_00,0xe3,puVar22 + 0x7818)" (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 "(this_00,0xe3,puVar22 + 0x7818)" ( identifier , number_literal , (binary_expression "puVar22 + 0x7818" identifier + number_literal) ))) ;) (expression_statement "pOStack_c0 = pOVar31;" (assignment_expression "pOStack_c0 = pOVar31" identifier = identifier) ;) (expression_statement "pOStack_bc = pOVar33;" (assignment_expression "pOStack_bc = pOVar33" identifier = identifier) ;) (expression_statement "ppOStack_b8 = ppOVar34;" (assignment_expression "ppOStack_b8 = ppOVar34" identifier = identifier) ;) (expression_statement "pOStack_b4 = pOVar35;" (assignment_expression "pOStack_b4 = pOVar35" identifier = identifier) ;) (expression_statement "pOStack_b0 = pOVar36;" (assignment_expression "pOStack_b0 = pOVar36" identifier = identifier) ;) (expression_statement "puStack_ac = puVar37;" (assignment_expression "puStack_ac = puVar37" identifier = identifier) ;) (expression_statement "iStack_a8 = iVar9;" (assignment_expression "iStack_a8 = iVar9" identifier = identifier) ;) (expression_statement "pcStack_a4 = pcVar43;" (assignment_expression "pcStack_a4 = pcVar43" identifier = identifier) ;) (if_statement "if (this_00->type_ == 1) {\n      puVar21 = (undefined1 *)0x1255;\n      goto LAB_001882ec;\n    }" if (parenthesized_expression "(this_00->type_ == 1)" ( (binary_expression "this_00->type_ == 1" (field_expression "this_00->type_" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      puVar21 = (undefined1 *)0x1255;\n      goto LAB_001882ec;\n    }" { (expression_statement "puVar21 = (undefined1 *)0x1255;" (assignment_expression "puVar21 = (undefined1 *)0x1255" identifier = (cast_expression "(undefined1 *)0x1255" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_001882ec;" goto statement_identifier ;) })) (if_statement "if (*(int *)&this_00->field_0x1a0 << 1 < 0) goto LAB_001882e8;" if (parenthesized_expression "(*(int *)&this_00->field_0x1a0 << 1 < 0)" ( (binary_expression "*(int *)&this_00->field_0x1a0 << 1 < 0" (binary_expression "*(int *)&this_00->field_0x1a0 << 1" (pointer_expression "*(int *)&this_00->field_0x1a0" * (cast_expression "(int *)&this_00->field_0x1a0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->field_0x1a0" & (field_expression "this_00->field_0x1a0" identifier -> field_identifier)))) << number_literal) < number_literal) )) (goto_statement "goto LAB_001882e8;" goto statement_identifier ;)) (expression_statement "ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n               _M_start;" (field_expression "ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n               _M_start" (field_expression "ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl" (binary_expression "ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_" (binary_expression "ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold::Output_data*,_std::allocator<gold" (binary_expression "ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold::Output_data*,_std" (assignment_expression "ppOVar34 = this_00->output_lists_[0].\n               super__Vector_base<gold" identifier = (binary_expression "this_00->output_lists_[0].\n               super__Vector_base<gold" (field_expression "this_00->output_lists_[0].\n               super__Vector_base" (subscript_expression "this_00->output_lists_[0]" (field_expression "this_00->output_lists_" identifier -> field_identifier) [ number_literal ]) . field_identifier) < identifier)) (ERROR "::Output_data" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_data" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if (this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n        _M_finish != ppOVar34) {\n      pOVar35 = (Output_data *)0x0;\n      iStack_c4 = 0;\n      iStack_c8 = 0;\n      goto LAB_00187c80;\n    }" if (parenthesized_expression "(this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n        _M_finish != ppOVar34)" ( (binary_expression "this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n        _M_finish != ppOVar34" (field_expression "this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n        _M_finish" (field_expression "this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl" (binary_expression "this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_" (binary_expression "this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std::allocator<gold" (binary_expression "this_00->output_lists_[0].\n        super__Vector_base<gold::Output_data*,_std" (binary_expression "this_00->output_lists_[0].\n        super__Vector_base<gold" (field_expression "this_00->output_lists_[0].\n        super__Vector_base" (subscript_expression "this_00->output_lists_[0]" (field_expression "this_00->output_lists_" identifier -> field_identifier) [ number_literal ]) . field_identifier) < identifier) (ERROR "::Output_data" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_data" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) != identifier) )) (compound_statement "{\n      pOVar35 = (Output_data *)0x0;\n      iStack_c4 = 0;\n      iStack_c8 = 0;\n      goto LAB_00187c80;\n    }" { (expression_statement "pOVar35 = (Output_data *)0x0;" (assignment_expression "pOVar35 = (Output_data *)0x0" identifier = (cast_expression "(Output_data *)0x0" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iStack_c4 = 0;" (assignment_expression "iStack_c4 = 0" identifier = number_literal) ;) (expression_statement "iStack_c8 = 0;" (assignment_expression "iStack_c8 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00187c80;" goto statement_identifier ;) })) (expression_statement "puVar21 = (undefined1 *)0x125f;" (assignment_expression "puVar21 = (undefined1 *)0x125f" identifier = (cast_expression "(undefined1 *)0x125f" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (uVar11 == 0) {\n      uVar11 = (byte)this_00->field_0x1a0 & 0xffffffbf | 0x40;\n      *(undefined4 *)((int)&this_00->vaddr_ + 4) = 0;\n      *(undefined4 *)&this_00->vaddr_ = 0;\n      *(undefined4 *)((int)&this_00->paddr_ + 4) = 0;\n      *(undefined4 *)&this_00->paddr_ = 0;\n      this_00->field_0x1a0 = (char)uVar11;\n      *(undefined4 *)((int)&this_00->memsz_ + 4) = 0;\n      *(undefined4 *)&this_00->memsz_ = 0;\n      *(undefined4 *)((int)&this_00->min_p_align_ + 4) = 0;\n      *(undefined4 *)&this_00->min_p_align_ = 0;\n      *(undefined4 *)((int)&this_00->offset_ + 4) = 0;\n      *(undefined4 *)&this_00->offset_ = 0;\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\n      return CONCAT44(uVar11,1);\n    }" if (parenthesized_expression "(uVar11 == 0)" ( (binary_expression "uVar11 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar11 = (byte)this_00->field_0x1a0 & 0xffffffbf | 0x40;\n      *(undefined4 *)((int)&this_00->vaddr_ + 4) = 0;\n      *(undefined4 *)&this_00->vaddr_ = 0;\n      *(undefined4 *)((int)&this_00->paddr_ + 4) = 0;\n      *(undefined4 *)&this_00->paddr_ = 0;\n      this_00->field_0x1a0 = (char)uVar11;\n      *(undefined4 *)((int)&this_00->memsz_ + 4) = 0;\n      *(undefined4 *)&this_00->memsz_ = 0;\n      *(undefined4 *)((int)&this_00->min_p_align_ + 4) = 0;\n      *(undefined4 *)&this_00->min_p_align_ = 0;\n      *(undefined4 *)((int)&this_00->offset_ + 4) = 0;\n      *(undefined4 *)&this_00->offset_ = 0;\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\n      return CONCAT44(uVar11,1);\n    }" { (expression_statement "uVar11 = (byte)this_00->field_0x1a0 & 0xffffffbf | 0x40;" (assignment_expression "uVar11 = (byte)this_00->field_0x1a0 & 0xffffffbf | 0x40" identifier = (binary_expression "(byte)this_00->field_0x1a0 & 0xffffffbf | 0x40" (binary_expression "(byte)this_00->field_0x1a0 & 0xffffffbf" (cast_expression "(byte)this_00->field_0x1a0" ( (type_descriptor "byte" type_identifier) ) (field_expression "this_00->field_0x1a0" identifier -> field_identifier)) & number_literal) | number_literal)) ;) (expression_statement "*(undefined4 *)((int)&this_00->vaddr_ + 4) = 0;" (assignment_expression "*(undefined4 *)((int)&this_00->vaddr_ + 4) = 0" (pointer_expression "*(undefined4 *)((int)&this_00->vaddr_ + 4)" * (cast_expression "(undefined4 *)((int)&this_00->vaddr_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->vaddr_ + 4)" ( (binary_expression "(int)&this_00->vaddr_ + 4" (cast_expression "(int)&this_00->vaddr_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->vaddr_" & (field_expression "this_00->vaddr_" identifier -> field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)&this_00->vaddr_ = 0;" (assignment_expression "*(undefined4 *)&this_00->vaddr_ = 0" (pointer_expression "*(undefined4 *)&this_00->vaddr_" * (cast_expression "(undefined4 *)&this_00->vaddr_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->vaddr_" & (field_expression "this_00->vaddr_" identifier -> field_identifier)))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)&this_00->paddr_ + 4) = 0;" (assignment_expression "*(undefined4 *)((int)&this_00->paddr_ + 4) = 0" (pointer_expression "*(undefined4 *)((int)&this_00->paddr_ + 4)" * (cast_expression "(undefined4 *)((int)&this_00->paddr_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->paddr_ + 4)" ( (binary_expression "(int)&this_00->paddr_ + 4" (cast_expression "(int)&this_00->paddr_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->paddr_" & (field_expression "this_00->paddr_" identifier -> field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)&this_00->paddr_ = 0;" (assignment_expression "*(undefined4 *)&this_00->paddr_ = 0" (pointer_expression "*(undefined4 *)&this_00->paddr_" * (cast_expression "(undefined4 *)&this_00->paddr_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->paddr_" & (field_expression "this_00->paddr_" identifier -> field_identifier)))) = number_literal) ;) (expression_statement "this_00->field_0x1a0 = (char)uVar11;" (assignment_expression "this_00->field_0x1a0 = (char)uVar11" (field_expression "this_00->field_0x1a0" identifier -> field_identifier) = (cast_expression "(char)uVar11" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "*(undefined4 *)((int)&this_00->memsz_ + 4) = 0;" (assignment_expression "*(undefined4 *)((int)&this_00->memsz_ + 4) = 0" (pointer_expression "*(undefined4 *)((int)&this_00->memsz_ + 4)" * (cast_expression "(undefined4 *)((int)&this_00->memsz_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->memsz_ + 4)" ( (binary_expression "(int)&this_00->memsz_ + 4" (cast_expression "(int)&this_00->memsz_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)&this_00->memsz_ = 0;" (assignment_expression "*(undefined4 *)&this_00->memsz_ = 0" (pointer_expression "*(undefined4 *)&this_00->memsz_" * (cast_expression "(undefined4 *)&this_00->memsz_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier)))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)&this_00->min_p_align_ + 4) = 0;" (assignment_expression "*(undefined4 *)((int)&this_00->min_p_align_ + 4) = 0" (pointer_expression "*(undefined4 *)((int)&this_00->min_p_align_ + 4)" * (cast_expression "(undefined4 *)((int)&this_00->min_p_align_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->min_p_align_ + 4)" ( (binary_expression "(int)&this_00->min_p_align_ + 4" (cast_expression "(int)&this_00->min_p_align_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->min_p_align_" & (field_expression "this_00->min_p_align_" identifier -> field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)&this_00->min_p_align_ = 0;" (assignment_expression "*(undefined4 *)&this_00->min_p_align_ = 0" (pointer_expression "*(undefined4 *)&this_00->min_p_align_" * (cast_expression "(undefined4 *)&this_00->min_p_align_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->min_p_align_" & (field_expression "this_00->min_p_align_" identifier -> field_identifier)))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)&this_00->offset_ + 4) = 0;" (assignment_expression "*(undefined4 *)((int)&this_00->offset_ + 4) = 0" (pointer_expression "*(undefined4 *)((int)&this_00->offset_ + 4)" * (cast_expression "(undefined4 *)((int)&this_00->offset_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->offset_ + 4)" ( (binary_expression "(int)&this_00->offset_ + 4" (cast_expression "(int)&this_00->offset_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->offset_" & (field_expression "this_00->offset_" identifier -> field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)&this_00->offset_ = 0;" (assignment_expression "*(undefined4 *)&this_00->offset_ = 0" (pointer_expression "*(undefined4 *)&this_00->offset_" * (cast_expression "(undefined4 *)&this_00->offset_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->offset_" & (field_expression "this_00->offset_" identifier -> field_identifier)))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)&this_00->filesz_ + 4) = 0;" (assignment_expression "*(undefined4 *)((int)&this_00->filesz_ + 4) = 0" (pointer_expression "*(undefined4 *)((int)&this_00->filesz_ + 4)" * (cast_expression "(undefined4 *)((int)&this_00->filesz_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->filesz_ + 4)" ( (binary_expression "(int)&this_00->filesz_ + 4" (cast_expression "(int)&this_00->filesz_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->filesz_" & (field_expression "this_00->filesz_" identifier -> field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)&this_00->filesz_ = 0;" (assignment_expression "*(undefined4 *)&this_00->filesz_ = 0" (pointer_expression "*(undefined4 *)&this_00->filesz_" * (cast_expression "(undefined4 *)&this_00->filesz_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->filesz_" & (field_expression "this_00->filesz_" identifier -> field_identifier)))) = number_literal) ;) (return_statement "return CONCAT44(uVar11,1);" return (call_expression "CONCAT44(uVar11,1)" identifier (argument_list "(uVar11,1)" ( identifier , number_literal ))) ;) })) (goto_statement "goto LAB_001882ec;" goto statement_identifier ;) })) (labeled_statement "LAB_00187518:\n  *(Output_data **)poff = local_78;" statement_identifier : (expression_statement "*(Output_data **)poff = local_78;" (assignment_expression "*(Output_data **)poff = local_78" (pointer_expression "*(Output_data **)poff" * (cast_expression "(Output_data **)poff" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) = identifier) ;)) (expression_statement "*(Output_data **)((int)poff + 4) = local_54;" (assignment_expression "*(Output_data **)((int)poff + 4) = local_54" (pointer_expression "*(Output_data **)((int)poff + 4)" * (cast_expression "(Output_data **)((int)poff + 4)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)poff + 4)" ( (binary_expression "(int)poff + 4" (cast_expression "(int)poff" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(Output_data **)pfoff = pOVar36;" (assignment_expression "*(Output_data **)pfoff = pOVar36" (pointer_expression "*(Output_data **)pfoff" * (cast_expression "(Output_data **)pfoff" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) = identifier) ;) (expression_statement "*(Output_data **)((int)pfoff + 4) = pOVar35;" (assignment_expression "*(Output_data **)((int)pfoff + 4) = pOVar35" (pointer_expression "*(Output_data **)((int)pfoff + 4)" * (cast_expression "(Output_data **)((int)pfoff + 4)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)pfoff + 4)" ( (binary_expression "(int)pfoff + 4" (cast_expression "(int)pfoff" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (return_statement "return addr;" return identifier ;) (labeled_statement "code_r0x00187434:\n  pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);" statement_identifier : (expression_statement "pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_);" (assignment_expression "pOVar19 = (Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_)" identifier = (cast_expression "(Output_data *)((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_)" ( (binary_expression "(int)&pOVar33->_vptr_Output_data + (int)pOVar42->data_size_" (cast_expression "(int)&pOVar33->_vptr_Output_data" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar33->_vptr_Output_data" & (field_expression "pOVar33->_vptr_Output_data" identifier -> field_identifier))) + (cast_expression "(int)pOVar42->data_size_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar42->data_size_" identifier -> field_identifier))) )))) ;)) (expression_statement "pOVar31 = (Output_data *)\n            ((int)&pOVar31->_vptr_Output_data +\n            (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_);" (assignment_expression "pOVar31 = (Output_data *)\n            ((int)&pOVar31->_vptr_Output_data +\n            (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_)" identifier = (cast_expression "(Output_data *)\n            ((int)&pOVar31->_vptr_Output_data +\n            (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar31->_vptr_Output_data +\n            (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_)" ( (binary_expression "(int)&pOVar31->_vptr_Output_data +\n            (uint)(pOVar19 < pOVar33) + *(int *)&pOVar42->data_size_" (binary_expression "(int)&pOVar31->_vptr_Output_data +\n            (uint)(pOVar19 < pOVar33)" (cast_expression "(int)&pOVar31->_vptr_Output_data" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar31->_vptr_Output_data" & (field_expression "pOVar31->_vptr_Output_data" identifier -> field_identifier))) + (call_expression "(uint)(pOVar19 < pOVar33)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pOVar19 < pOVar33)" ( (binary_expression "pOVar19 < pOVar33" identifier < identifier) )))) + (pointer_expression "*(int *)&pOVar42->data_size_" * (cast_expression "(int *)&pOVar42->data_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->data_size_" & (field_expression "pOVar42->data_size_" identifier -> field_identifier))))) )))) ;) (expression_statement "pOVar35 = pOVar19;" (assignment_expression "pOVar35 = pOVar19" identifier = identifier) ;) (expression_statement "pOVar36 = pOVar31;" (assignment_expression "pOVar36 = pOVar31" identifier = identifier) ;) (labeled_statement "LAB_00187458:\n  if (((int)local_78 < (int)pOVar31) || ((pOVar31 == local_78 && (local_54 < pOVar19)))) {\n    local_78 = pOVar31;\n    local_54 = pOVar19;\n  }" statement_identifier : (if_statement "if (((int)local_78 < (int)pOVar31) || ((pOVar31 == local_78 && (local_54 < pOVar19)))) {\n    local_78 = pOVar31;\n    local_54 = pOVar19;\n  }" if (parenthesized_expression "(((int)local_78 < (int)pOVar31) || ((pOVar31 == local_78 && (local_54 < pOVar19))))" ( (binary_expression "((int)local_78 < (int)pOVar31) || ((pOVar31 == local_78 && (local_54 < pOVar19)))" (parenthesized_expression "((int)local_78 < (int)pOVar31)" ( (binary_expression "(int)local_78 < (int)pOVar31" (cast_expression "(int)local_78" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)pOVar31" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((pOVar31 == local_78 && (local_54 < pOVar19)))" ( (parenthesized_expression "(pOVar31 == local_78 && (local_54 < pOVar19))" ( (binary_expression "pOVar31 == local_78 && (local_54 < pOVar19)" (binary_expression "pOVar31 == local_78" identifier == identifier) && (parenthesized_expression "(local_54 < pOVar19)" ( (binary_expression "local_54 < pOVar19" identifier < identifier) ))) )) ))) )) (compound_statement "{\n    local_78 = pOVar31;\n    local_54 = pOVar19;\n  }" { (expression_statement "local_78 = pOVar31;" (assignment_expression "local_78 = pOVar31" identifier = identifier) ;) (expression_statement "local_54 = pOVar19;" (assignment_expression "local_54 = pOVar19" identifier = identifier) ;) }))) (expression_statement "iVar9 = (*pOVar42->_vptr_Output_data[6])(pOVar42);" (assignment_expression "iVar9 = (*pOVar42->_vptr_Output_data[6])(pOVar42)" identifier = (call_expression "(*pOVar42->_vptr_Output_data[6])(pOVar42)" (parenthesized_expression "(*pOVar42->_vptr_Output_data[6])" ( (pointer_expression "*pOVar42->_vptr_Output_data[6]" * (subscript_expression "pOVar42->_vptr_Output_data[6]" (field_expression "pOVar42->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) )) (argument_list "(pOVar42)" ( identifier )))) ;) (if_statement "if (iVar9 != 0) {\n    pOVar42 = *ppOVar34;\n    if (pOVar42->_vptr_Output_data[0xc] == (_func_int_varargs *)PTR_do_set_out_shndx_00432ea4) {\n      uVar11 = (uint)pOVar42[2].data_size_;\n      if ((uVar11 != 0xffffffff) && (*pshndx != uVar11)) {\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  );\n        local_78 = pOVar15;\n        local_54 = pOVar18;\n        goto LAB_00187518;\n      }\n      *(uint *)((int)&pOVar42[2].data_size_ + 4) = *pshndx;\n    }\n    else {\n      (*pOVar42->_vptr_Output_data[0xc])();\n    }\n    *pshndx = *pshndx + 1;\n  }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n    pOVar42 = *ppOVar34;\n    if (pOVar42->_vptr_Output_data[0xc] == (_func_int_varargs *)PTR_do_set_out_shndx_00432ea4) {\n      uVar11 = (uint)pOVar42[2].data_size_;\n      if ((uVar11 != 0xffffffff) && (*pshndx != uVar11)) {\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  );\n        local_78 = pOVar15;\n        local_54 = pOVar18;\n        goto LAB_00187518;\n      }\n      *(uint *)((int)&pOVar42[2].data_size_ + 4) = *pshndx;\n    }\n    else {\n      (*pOVar42->_vptr_Output_data[0xc])();\n    }\n    *pshndx = *pshndx + 1;\n  }" { (expression_statement "pOVar42 = *ppOVar34;" (assignment_expression "pOVar42 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (if_statement "if (pOVar42->_vptr_Output_data[0xc] == (_func_int_varargs *)PTR_do_set_out_shndx_00432ea4) {\n      uVar11 = (uint)pOVar42[2].data_size_;\n      if ((uVar11 != 0xffffffff) && (*pshndx != uVar11)) {\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  );\n        local_78 = pOVar15;\n        local_54 = pOVar18;\n        goto LAB_00187518;\n      }\n      *(uint *)((int)&pOVar42[2].data_size_ + 4) = *pshndx;\n    }\n    else {\n      (*pOVar42->_vptr_Output_data[0xc])();\n    }" if (parenthesized_expression "(pOVar42->_vptr_Output_data[0xc] == (_func_int_varargs *)PTR_do_set_out_shndx_00432ea4)" ( (binary_expression "pOVar42->_vptr_Output_data[0xc] == (_func_int_varargs *)PTR_do_set_out_shndx_00432ea4" (subscript_expression "pOVar42->_vptr_Output_data[0xc]" (field_expression "pOVar42->_vptr_Output_data" identifier -> field_identifier) [ number_literal ]) == (cast_expression "(_func_int_varargs *)PTR_do_set_out_shndx_00432ea4" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (compound_statement "{\n      uVar11 = (uint)pOVar42[2].data_size_;\n      if ((uVar11 != 0xffffffff) && (*pshndx != uVar11)) {\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  );\n        local_78 = pOVar15;\n        local_54 = pOVar18;\n        goto LAB_00187518;\n      }\n      *(uint *)((int)&pOVar42[2].data_size_ + 4) = *pshndx;\n    }" { (expression_statement "uVar11 = (uint)pOVar42[2].data_size_;" (assignment_expression "uVar11 = (uint)pOVar42[2].data_size_" identifier = (cast_expression "(uint)pOVar42[2].data_size_" ( (type_descriptor "uint" type_identifier) ) (field_expression "pOVar42[2].data_size_" (subscript_expression "pOVar42[2]" identifier [ number_literal ]) . field_identifier))) ;) (if_statement "if ((uVar11 != 0xffffffff) && (*pshndx != uVar11)) {\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  );\n        local_78 = pOVar15;\n        local_54 = pOVar18;\n        goto LAB_00187518;\n      }" if (parenthesized_expression "((uVar11 != 0xffffffff) && (*pshndx != uVar11))" ( (binary_expression "(uVar11 != 0xffffffff) && (*pshndx != uVar11)" (parenthesized_expression "(uVar11 != 0xffffffff)" ( (binary_expression "uVar11 != 0xffffffff" identifier != number_literal) )) && (parenthesized_expression "(*pshndx != uVar11)" ( (binary_expression "*pshndx != uVar11" (pointer_expression "*pshndx" * identifier) != identifier) ))) )) (compound_statement "{\n        (*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  );\n        local_78 = pOVar15;\n        local_54 = pOVar18;\n        goto LAB_00187518;\n      }" { (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  );" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                  (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  )" (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,0x104b,PTR_s_alize_xindex_004323b4 + 0x7000\n                  )" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7000" identifier + number_literal) ))) ;) (expression_statement "local_78 = pOVar15;" (assignment_expression "local_78 = pOVar15" identifier = identifier) ;) (expression_statement "local_54 = pOVar18;" (assignment_expression "local_54 = pOVar18" identifier = identifier) ;) (goto_statement "goto LAB_00187518;" goto statement_identifier ;) })) (expression_statement "*(uint *)((int)&pOVar42[2].data_size_ + 4) = *pshndx;" (assignment_expression "*(uint *)((int)&pOVar42[2].data_size_ + 4) = *pshndx" (pointer_expression "*(uint *)((int)&pOVar42[2].data_size_ + 4)" * (cast_expression "(uint *)((int)&pOVar42[2].data_size_ + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar42[2].data_size_ + 4)" ( (binary_expression "(int)&pOVar42[2].data_size_ + 4" (cast_expression "(int)&pOVar42[2].data_size_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar42[2].data_size_" & (field_expression "pOVar42[2].data_size_" (subscript_expression "pOVar42[2]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) = (pointer_expression "*pshndx" * identifier)) ;) }) (else_clause "else {\n      (*pOVar42->_vptr_Output_data[0xc])();\n    }" else (compound_statement "{\n      (*pOVar42->_vptr_Output_data[0xc])();\n    }" { (expression_statement "(*pOVar42->_vptr_Output_data[0xc])();" (call_expression "(*pOVar42->_vptr_Output_data[0xc])()" (parenthesized_expression "(*pOVar42->_vptr_Output_data[0xc])" ( (pointer_expression "*pOVar42->_vptr_Output_data[0xc]" * (subscript_expression "pOVar42->_vptr_Output_data[0xc]" (field_expression "pOVar42->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) )) (argument_list "()" ( ))) ;) }))) (expression_statement "*pshndx = *pshndx + 1;" (assignment_expression "*pshndx = *pshndx + 1" (pointer_expression "*pshndx" * identifier) = (binary_expression "*pshndx + 1" (pointer_expression "*pshndx" * identifier) + number_literal)) ;) })) (expression_statement "ppOVar34 = ppOVar34 + 1;" (assignment_expression "ppOVar34 = ppOVar34 + 1" identifier = (binary_expression "ppOVar34 + 1" identifier + number_literal)) ;) (expression_statement "pOVar42 = local_54;" (assignment_expression "pOVar42 = local_54" identifier = identifier) ;) (expression_statement "pOVar33 = pOVar19;" (assignment_expression "pOVar33 = pOVar19" identifier = identifier) ;) (if_statement "if ((pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish == ppOVar34) goto code_r0x001874e4;" if (parenthesized_expression "((pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish == ppOVar34)" ( (binary_expression "(pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish == ppOVar34" (field_expression "(pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl.\n      _M_finish" (field_expression "(pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)._M_impl" (parenthesized_expression "(pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>)" ( (binary_expression "pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>" (binary_expression "pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_" (binary_expression "pdl->super__Vector_base<gold::Output_data*,_std::allocator<gold" (binary_expression "pdl->super__Vector_base<gold::Output_data*,_std" (binary_expression "pdl->super__Vector_base<gold" (field_expression "pdl->super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::Output_data" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_data" : : identifier) * (ERROR ">" >) identifier) > identifier) )) . field_identifier) . field_identifier) == identifier) )) (goto_statement "goto code_r0x001874e4;" goto statement_identifier ;)) (goto_statement "goto LAB_00187154;" goto statement_identifier ;) (labeled_statement "code_r0x001874e4:\n  addr = addr + CONCAT44((undefined *)\n                         ((int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15)),(Output_data *)((int)local_54 - (int)pOVar18));" statement_identifier : (expression_statement "addr = addr + CONCAT44((undefined *)\n                         ((int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15)),(Output_data *)((int)local_54 - (int)pOVar18));" (assignment_expression "addr = addr + CONCAT44((undefined *)\n                         ((int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15)),(Output_data *)((int)local_54 - (int)pOVar18))" identifier = (binary_expression "addr + CONCAT44((undefined *)\n                         ((int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15)),(Output_data *)((int)local_54 - (int)pOVar18))" identifier + (call_expression "CONCAT44((undefined *)\n                         ((int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15)),(Output_data *)((int)local_54 - (int)pOVar18))" identifier (argument_list "((undefined *)\n                         ((int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15)),(Output_data *)((int)local_54 - (int)pOVar18))" ( (cast_expression "(undefined *)\n                         ((int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15))" ( (binary_expression "(int)local_78 +\n                         (-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15)" (cast_expression "(int)local_78" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15)" ( (binary_expression "-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18)) -\n                         (int)pOVar15" (unary_expression "-(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18))" - (call_expression "(uint)(local_54 < (Output_data *)((int)local_54 - (int)pOVar18))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_54 < (Output_data *)((int)local_54 - (int)pOVar18))" ( (binary_expression "local_54 < (Output_data *)((int)local_54 - (int)pOVar18)" identifier < (cast_expression "(Output_data *)((int)local_54 - (int)pOVar18)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_54 - (int)pOVar18)" ( (binary_expression "(int)local_54 - (int)pOVar18" (cast_expression "(int)local_54" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pOVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )))) )))) - (cast_expression "(int)pOVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))) , (cast_expression "(Output_data *)((int)local_54 - (int)pOVar18)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_54 - (int)pOVar18)" ( (binary_expression "(int)local_54 - (int)pOVar18" (cast_expression "(int)local_54" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pOVar18" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))))) ;)) (goto_statement "goto LAB_00187518;" goto statement_identifier ;) (labeled_statement "LAB_001878c0:\n  (*(code *)PTR_do_gold_unreachable_004323c4)\n            (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,PTR_s_alize_xindex_004323b4 + 0x751c);" statement_identifier : (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n            (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,PTR_s_alize_xindex_004323b4 + 0x751c);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n            (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,PTR_s_alize_xindex_004323b4 + 0x751c)" (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,0x163,PTR_s_alize_xindex_004323b4 + 0x751c)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x751c" identifier + number_literal) ))) ;)) (labeled_statement "LAB_001878dc:\n  local_70 = (Output_data *)uVar44;" statement_identifier : (expression_statement "local_70 = (Output_data *)uVar44;" (assignment_expression "local_70 = (Output_data *)uVar44" identifier = (cast_expression "(Output_data *)uVar44" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (if_statement "if (pOVar33 == pOVar35) {\n    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;\n    pOVar42 = pOVar35;\n    pOVar19 = pOVar36;\n  }\n  else {\nLAB_00187270:\n    local_70 = (Output_data *)uVar44;\n    if (iVar9 == 0) {\n      uVar38 = 0x11df;\n      goto LAB_00187b08;\n    }\n    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;\n    pOVar42 = pOVar35;\n    pOVar19 = pOVar36;\n  }" if (parenthesized_expression "(pOVar33 == pOVar35)" ( (binary_expression "pOVar33 == pOVar35" identifier == identifier) )) (compound_statement "{\n    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;\n    pOVar42 = pOVar35;\n    pOVar19 = pOVar36;\n  }" { (expression_statement "uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;" (assignment_expression "uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70" identifier = (binary_expression "(uint)(uVar44 >> 0x20) | (uint)local_70" (call_expression "(uint)(uVar44 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar44 >> 0x20)" ( (binary_expression "uVar44 >> 0x20" identifier >> number_literal) ))) | (cast_expression "(uint)local_70" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "pOVar42 = pOVar35;" (assignment_expression "pOVar42 = pOVar35" identifier = identifier) ;) (expression_statement "pOVar19 = pOVar36;" (assignment_expression "pOVar19 = pOVar36" identifier = identifier) ;) }) (else_clause "else {\nLAB_00187270:\n    local_70 = (Output_data *)uVar44;\n    if (iVar9 == 0) {\n      uVar38 = 0x11df;\n      goto LAB_00187b08;\n    }\n    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;\n    pOVar42 = pOVar35;\n    pOVar19 = pOVar36;\n  }" else (compound_statement "{\nLAB_00187270:\n    local_70 = (Output_data *)uVar44;\n    if (iVar9 == 0) {\n      uVar38 = 0x11df;\n      goto LAB_00187b08;\n    }\n    uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;\n    pOVar42 = pOVar35;\n    pOVar19 = pOVar36;\n  }" { (labeled_statement "LAB_00187270:\n    local_70 = (Output_data *)uVar44;" statement_identifier : (expression_statement "local_70 = (Output_data *)uVar44;" (assignment_expression "local_70 = (Output_data *)uVar44" identifier = (cast_expression "(Output_data *)uVar44" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (if_statement "if (iVar9 == 0) {\n      uVar38 = 0x11df;\n      goto LAB_00187b08;\n    }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar38 = 0x11df;\n      goto LAB_00187b08;\n    }" { (expression_statement "uVar38 = 0x11df;" (assignment_expression "uVar38 = 0x11df" identifier = number_literal) ;) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70;" (assignment_expression "uVar11 = (uint)(uVar44 >> 0x20) | (uint)local_70" identifier = (binary_expression "(uint)(uVar44 >> 0x20) | (uint)local_70" (call_expression "(uint)(uVar44 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar44 >> 0x20)" ( (binary_expression "uVar44 >> 0x20" identifier >> number_literal) ))) | (cast_expression "(uint)local_70" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "pOVar42 = pOVar35;" (assignment_expression "pOVar42 = pOVar35" identifier = identifier) ;) (expression_statement "pOVar19 = pOVar36;" (assignment_expression "pOVar19 = pOVar36" identifier = identifier) ;) }))) (expression_statement "local_70 = (Output_data *)uVar44;" (assignment_expression "local_70 = (Output_data *)uVar44" identifier = (cast_expression "(Output_data *)uVar44" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (uVar11 != 0) {\n    lVar3 = uVar44 + CONCAT44((undefined *)\n                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)),\n                              &pOVar33[-1].field_0x27);\n    pOVar33 = (Output_data *)((uint)lVar3 & -(int)local_70);\n    pOVar31 = (Output_data *)\n              ((uint)((ulonglong)lVar3 >> 0x20) &\n              -(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20));\n  }" if (parenthesized_expression "(uVar11 != 0)" ( (binary_expression "uVar11 != 0" identifier != number_literal) )) (compound_statement "{\n    lVar3 = uVar44 + CONCAT44((undefined *)\n                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)),\n                              &pOVar33[-1].field_0x27);\n    pOVar33 = (Output_data *)((uint)lVar3 & -(int)local_70);\n    pOVar31 = (Output_data *)\n              ((uint)((ulonglong)lVar3 >> 0x20) &\n              -(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20));\n  }" { (expression_statement "lVar3 = uVar44 + CONCAT44((undefined *)\n                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)),\n                              &pOVar33[-1].field_0x27);" (assignment_expression "lVar3 = uVar44 + CONCAT44((undefined *)\n                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)),\n                              &pOVar33[-1].field_0x27)" identifier = (binary_expression "uVar44 + CONCAT44((undefined *)\n                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)),\n                              &pOVar33[-1].field_0x27)" identifier + (call_expression "CONCAT44((undefined *)\n                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)),\n                              &pOVar33[-1].field_0x27)" identifier (argument_list "((undefined *)\n                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)),\n                              &pOVar33[-1].field_0x27)" ( (cast_expression "(undefined *)\n                              ((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1))" ( (binary_expression "(int)pOVar31 + ((&pOVar33[-1].field_0x27 < pOVar33) - 1)" (cast_expression "(int)pOVar31" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "((&pOVar33[-1].field_0x27 < pOVar33) - 1)" ( (binary_expression "(&pOVar33[-1].field_0x27 < pOVar33) - 1" (parenthesized_expression "(&pOVar33[-1].field_0x27 < pOVar33)" ( (binary_expression "&pOVar33[-1].field_0x27 < pOVar33" (pointer_expression "&pOVar33[-1].field_0x27" & (field_expression "pOVar33[-1].field_0x27" (subscript_expression "pOVar33[-1]" identifier [ number_literal ]) . field_identifier)) < identifier) )) - number_literal) ))) ))) , (pointer_expression "&pOVar33[-1].field_0x27" & (field_expression "pOVar33[-1].field_0x27" (subscript_expression "pOVar33[-1]" identifier [ number_literal ]) . field_identifier)) ))))) ;) (expression_statement "pOVar33 = (Output_data *)((uint)lVar3 & -(int)local_70);" (assignment_expression "pOVar33 = (Output_data *)((uint)lVar3 & -(int)local_70)" identifier = (cast_expression "(Output_data *)((uint)lVar3 & -(int)local_70)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)lVar3 & -(int)local_70)" ( (binary_expression "(uint)lVar3 & -(int)local_70" (cast_expression "(uint)lVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & (unary_expression "-(int)local_70" - (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier))) )))) ;) (expression_statement "pOVar31 = (Output_data *)\n              ((uint)((ulonglong)lVar3 >> 0x20) &\n              -(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20));" (assignment_expression "pOVar31 = (Output_data *)\n              ((uint)((ulonglong)lVar3 >> 0x20) &\n              -(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20))" identifier = (cast_expression "(Output_data *)\n              ((uint)((ulonglong)lVar3 >> 0x20) &\n              -(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20))" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)((ulonglong)lVar3 >> 0x20) &\n              -(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20))" ( (binary_expression "(uint)((ulonglong)lVar3 >> 0x20) &\n              -(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20)" (call_expression "(uint)((ulonglong)lVar3 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar3 >> 0x20)" ( (binary_expression "(ulonglong)lVar3 >> 0x20" (cast_expression "(ulonglong)lVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) & (binary_expression "-(uint)(-(int)local_70 != 0) - (int)(uVar44 >> 0x20)" (unary_expression "-(uint)(-(int)local_70 != 0)" - (call_expression "(uint)(-(int)local_70 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(-(int)local_70 != 0)" ( (binary_expression "-(int)local_70 != 0" (unary_expression "-(int)local_70" - (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)) != number_literal) )))) - (cast_expression "(int)(uVar44 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uVar44 >> 0x20)" ( (binary_expression "uVar44 >> 0x20" identifier >> number_literal) ))))) )))) ;) })) (expression_statement "pOVar35 = pOVar33;" (assignment_expression "pOVar35 = pOVar33" identifier = identifier) ;) (expression_statement "pOVar36 = pOVar31;" (assignment_expression "pOVar36 = pOVar31" identifier = identifier) ;) (if_statement "if ((iVar10 == 0) && (pOVar35 = pOVar42, pOVar36 = pOVar19, iVar9 == 0)) {\n    pOVar35 = pOVar33;\n    pOVar36 = pOVar31;\n  }" if (parenthesized_expression "((iVar10 == 0) && (pOVar35 = pOVar42, pOVar36 = pOVar19, iVar9 == 0))" ( (binary_expression "(iVar10 == 0) && (pOVar35 = pOVar42, pOVar36 = pOVar19, iVar9 == 0)" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) && (parenthesized_expression "(pOVar35 = pOVar42, pOVar36 = pOVar19, iVar9 == 0)" ( (comma_expression "pOVar35 = pOVar42, pOVar36 = pOVar19, iVar9 == 0" (assignment_expression "pOVar35 = pOVar42" identifier = identifier) , (comma_expression "pOVar36 = pOVar19, iVar9 == 0" (assignment_expression "pOVar36 = pOVar19" identifier = identifier) , (binary_expression "iVar9 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n    pOVar35 = pOVar33;\n    pOVar36 = pOVar31;\n  }" { (expression_statement "pOVar35 = pOVar33;" (assignment_expression "pOVar35 = pOVar33" identifier = identifier) ;) (expression_statement "pOVar36 = pOVar31;" (assignment_expression "pOVar36 = pOVar31" identifier = identifier) ;) })) (expression_statement "pOVar42 = *ppOVar34;" (assignment_expression "pOVar42 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (expression_statement "uVar44 = CONCAT44(pOVar42,local_70);" (assignment_expression "uVar44 = CONCAT44(pOVar42,local_70)" identifier = (call_expression "CONCAT44(pOVar42,local_70)" identifier (argument_list "(pOVar42,local_70)" ( identifier , identifier )))) ;) (if_statement "if (*(int *)&pOVar42->field_0x20 < 0) goto LAB_00187b74;" if (parenthesized_expression "(*(int *)&pOVar42->field_0x20 < 0)" ( (binary_expression "*(int *)&pOVar42->field_0x20 < 0" (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier)))) < number_literal) )) (goto_statement "goto LAB_00187b74;" goto statement_identifier ;)) (expression_statement "bVar1 = pOVar42->field_0x20;" (assignment_expression "bVar1 = pOVar42->field_0x20" identifier = (field_expression "pOVar42->field_0x20" identifier -> field_identifier)) ;) (expression_statement "pOVar42->address_ =\n       addr + CONCAT44((undefined *)\n                       ((int)pOVar31 +\n                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18));" (assignment_expression "pOVar42->address_ =\n       addr + CONCAT44((undefined *)\n                       ((int)pOVar31 +\n                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" (field_expression "pOVar42->address_" identifier -> field_identifier) = (binary_expression "addr + CONCAT44((undefined *)\n                       ((int)pOVar31 +\n                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" identifier + (call_expression "CONCAT44((undefined *)\n                       ((int)pOVar31 +\n                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" identifier (argument_list "((undefined *)\n                       ((int)pOVar31 +\n                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15)),(Output_data *)((int)pOVar33 - (int)pOVar18))" ( (cast_expression "(undefined *)\n                       ((int)pOVar31 +\n                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar31 +\n                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15))" ( (binary_expression "(int)pOVar31 +\n                       (-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15)" (cast_expression "(int)pOVar31" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15)" ( (binary_expression "-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)) -\n                       (int)pOVar15" (unary_expression "-(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18))" - (call_expression "(uint)(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18))" ( (binary_expression "pOVar33 < (Output_data *)((int)pOVar33 - (int)pOVar18)" identifier < (cast_expression "(Output_data *)((int)pOVar33 - (int)pOVar18)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar33 - (int)pOVar18)" ( (binary_expression "(int)pOVar33 - (int)pOVar18" (cast_expression "(int)pOVar33" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pOVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )))) )))) - (cast_expression "(int)pOVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))) , (cast_expression "(Output_data *)((int)pOVar33 - (int)pOVar18)" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar33 - (int)pOVar18)" ( (binary_expression "(int)pOVar33 - (int)pOVar18" (cast_expression "(int)pOVar33" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pOVar18" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))))) ;) (expression_statement "pOVar42->field_0x20 = bVar1 & 0x7f | 0x80;" (assignment_expression "pOVar42->field_0x20 = bVar1 & 0x7f | 0x80" (field_expression "pOVar42->field_0x20" identifier -> field_identifier) = (binary_expression "bVar1 & 0x7f | 0x80" (binary_expression "bVar1 & 0x7f" identifier & number_literal) | number_literal)) ;) (if_statement "if (*(int *)&pOVar42->field_0x20 << 2 < 0) goto LAB_00187b94;" if (parenthesized_expression "(*(int *)&pOVar42->field_0x20 << 2 < 0)" ( (binary_expression "*(int *)&pOVar42->field_0x20 << 2 < 0" (binary_expression "*(int *)&pOVar42->field_0x20 << 2" (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier)))) << number_literal) < number_literal) )) (goto_statement "goto LAB_00187b94;" goto statement_identifier ;)) (expression_statement "*(Output_data **)&pOVar42->offset_ = pOVar36;" (assignment_expression "*(Output_data **)&pOVar42->offset_ = pOVar36" (pointer_expression "*(Output_data **)&pOVar42->offset_" * (cast_expression "(Output_data **)&pOVar42->offset_" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pOVar42->offset_" & (field_expression "pOVar42->offset_" identifier -> field_identifier)))) = identifier) ;) (expression_statement "*(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35;" (assignment_expression "*(Output_data **)((int)&pOVar42->offset_ + 4) = pOVar35" (pointer_expression "*(Output_data **)((int)&pOVar42->offset_ + 4)" * (cast_expression "(Output_data **)((int)&pOVar42->offset_ + 4)" ( (type_descriptor "Output_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&pOVar42->offset_ + 4)" ( (binary_expression "(int)&pOVar42->offset_ + 4" (cast_expression "(int)&pOVar42->offset_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar42->offset_" & (field_expression "pOVar42->offset_" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "pOVar42->field_0x20 = bVar1 & 0x5f | 0xa0;" (assignment_expression "pOVar42->field_0x20 = bVar1 & 0x5f | 0xa0" (field_expression "pOVar42->field_0x20" identifier -> field_identifier) = (binary_expression "bVar1 & 0x5f | 0xa0" (binary_expression "bVar1 & 0x5f" identifier & number_literal) | number_literal)) ;) (expression_statement "pOVar19 = pOVar35;" (assignment_expression "pOVar19 = pOVar35" identifier = identifier) ;) (expression_statement "pOVar26 = pOVar36;" (assignment_expression "pOVar26 = pOVar36" identifier = identifier) ;) (if_statement "if (*(int *)&pOVar42->field_0x20 << 1 < 0) goto LAB_0018736c;" if (parenthesized_expression "(*(int *)&pOVar42->field_0x20 << 1 < 0)" ( (binary_expression "*(int *)&pOVar42->field_0x20 << 1 < 0" (binary_expression "*(int *)&pOVar42->field_0x20 << 1" (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier)))) << number_literal) < number_literal) )) (goto_statement "goto LAB_0018736c;" goto statement_identifier ;)) (expression_statement "(*pOVar42->_vptr_Output_data[0xe])(pOVar42);" (call_expression "(*pOVar42->_vptr_Output_data[0xe])(pOVar42)" (parenthesized_expression "(*pOVar42->_vptr_Output_data[0xe])" ( (pointer_expression "*pOVar42->_vptr_Output_data[0xe]" * (subscript_expression "pOVar42->_vptr_Output_data[0xe]" (field_expression "pOVar42->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) )) (argument_list "(pOVar42)" ( identifier ))) ;) (expression_statement "iVar12 = *(int *)&pOVar42->field_0x20;" (assignment_expression "iVar12 = *(int *)&pOVar42->field_0x20" identifier = (pointer_expression "*(int *)&pOVar42->field_0x20" * (cast_expression "(int *)&pOVar42->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar42->field_0x20" & (field_expression "pOVar42->field_0x20" identifier -> field_identifier))))) ;) (labeled_statement "joined_r0x001878b8:\n  pOVar19 = pOVar35;" statement_identifier : (expression_statement "pOVar19 = pOVar35;" (assignment_expression "pOVar19 = pOVar35" identifier = identifier) ;)) (expression_statement "pOVar26 = pOVar36;" (assignment_expression "pOVar26 = pOVar36" identifier = identifier) ;) (if_statement "if (iVar12 << 1 < 0) goto LAB_0018736c;" if (parenthesized_expression "(iVar12 << 1 < 0)" ( (binary_expression "iVar12 << 1 < 0" (binary_expression "iVar12 << 1" identifier << number_literal) < number_literal) )) (goto_statement "goto LAB_0018736c;" goto statement_identifier ;)) (goto_statement "goto LAB_001878c0;" goto statement_identifier ;) (labeled_statement "LAB_00187c80:\n  do {\n    pOVar36 = *ppOVar34;\n    if (pOVar35 == (Output_data *)0x0) {\nLAB_00187f58:\n      pOVar35 = pOVar36;\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)&pOVar35->field_0x20) goto LAB_001882b0;\n      uVar17 = *(uint *)&pOVar35->address_;\n      uVar20 = (uint)pOVar35->address_;\n      if ((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))) goto LAB_00187f58;\n      if ((uVar17 == uVar13) && (uVar20 == uVar24)) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;\n        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;\n      }\n    }\n    iVar9 = (*pOVar36->_vptr_Output_data[6])();\n    if ((iVar9 == 0) ||\n       (iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8)) {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c4;\n      piVar14 = &iStack_c4;\n      if (iStack_c4 != 0) goto LAB_00187d18;\nLAB_00187f0c:\n      *piVar14 = (int)pOVar36;\n    }\n    else {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c8;\n      piVar14 = &iStack_c8;\n      if (iStack_c8 == 0) goto LAB_00187f0c;\nLAB_00187d18:\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)(iVar10 + 0x20)) goto LAB_001882b0;\n      uVar17 = *(uint *)(iVar10 + 8);\n      if ((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))\n      goto LAB_00187f0c;\n      if ((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;\n        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;\n        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }\n      }\n    }\n    ppOVar34 = ppOVar34 + 1;\n  } while (this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n           _M_finish != ppOVar34);" statement_identifier : (do_statement "do {\n    pOVar36 = *ppOVar34;\n    if (pOVar35 == (Output_data *)0x0) {\nLAB_00187f58:\n      pOVar35 = pOVar36;\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)&pOVar35->field_0x20) goto LAB_001882b0;\n      uVar17 = *(uint *)&pOVar35->address_;\n      uVar20 = (uint)pOVar35->address_;\n      if ((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))) goto LAB_00187f58;\n      if ((uVar17 == uVar13) && (uVar20 == uVar24)) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;\n        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;\n      }\n    }\n    iVar9 = (*pOVar36->_vptr_Output_data[6])();\n    if ((iVar9 == 0) ||\n       (iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8)) {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c4;\n      piVar14 = &iStack_c4;\n      if (iStack_c4 != 0) goto LAB_00187d18;\nLAB_00187f0c:\n      *piVar14 = (int)pOVar36;\n    }\n    else {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c8;\n      piVar14 = &iStack_c8;\n      if (iStack_c8 == 0) goto LAB_00187f0c;\nLAB_00187d18:\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)(iVar10 + 0x20)) goto LAB_001882b0;\n      uVar17 = *(uint *)(iVar10 + 8);\n      if ((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))\n      goto LAB_00187f0c;\n      if ((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;\n        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;\n        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }\n      }\n    }\n    ppOVar34 = ppOVar34 + 1;\n  } while (this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n           _M_finish != ppOVar34);" do (compound_statement "{\n    pOVar36 = *ppOVar34;\n    if (pOVar35 == (Output_data *)0x0) {\nLAB_00187f58:\n      pOVar35 = pOVar36;\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)&pOVar35->field_0x20) goto LAB_001882b0;\n      uVar17 = *(uint *)&pOVar35->address_;\n      uVar20 = (uint)pOVar35->address_;\n      if ((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))) goto LAB_00187f58;\n      if ((uVar17 == uVar13) && (uVar20 == uVar24)) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;\n        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;\n      }\n    }\n    iVar9 = (*pOVar36->_vptr_Output_data[6])();\n    if ((iVar9 == 0) ||\n       (iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8)) {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c4;\n      piVar14 = &iStack_c4;\n      if (iStack_c4 != 0) goto LAB_00187d18;\nLAB_00187f0c:\n      *piVar14 = (int)pOVar36;\n    }\n    else {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c8;\n      piVar14 = &iStack_c8;\n      if (iStack_c8 == 0) goto LAB_00187f0c;\nLAB_00187d18:\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)(iVar10 + 0x20)) goto LAB_001882b0;\n      uVar17 = *(uint *)(iVar10 + 8);\n      if ((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))\n      goto LAB_00187f0c;\n      if ((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;\n        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;\n        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }\n      }\n    }\n    ppOVar34 = ppOVar34 + 1;\n  }" { (expression_statement "pOVar36 = *ppOVar34;" (assignment_expression "pOVar36 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (if_statement "if (pOVar35 == (Output_data *)0x0) {\nLAB_00187f58:\n      pOVar35 = pOVar36;\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)&pOVar35->field_0x20) goto LAB_001882b0;\n      uVar17 = *(uint *)&pOVar35->address_;\n      uVar20 = (uint)pOVar35->address_;\n      if ((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))) goto LAB_00187f58;\n      if ((uVar17 == uVar13) && (uVar20 == uVar24)) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;\n        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;\n      }\n    }" if (parenthesized_expression "(pOVar35 == (Output_data *)0x0)" ( (binary_expression "pOVar35 == (Output_data *)0x0" identifier == (cast_expression "(Output_data *)0x0" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00187f58:\n      pOVar35 = pOVar36;\n    }" { (labeled_statement "LAB_00187f58:\n      pOVar35 = pOVar36;" statement_identifier : (expression_statement "pOVar35 = pOVar36;" (assignment_expression "pOVar35 = pOVar36" identifier = identifier) ;)) }) (else_clause "else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)&pOVar35->field_0x20) goto LAB_001882b0;\n      uVar17 = *(uint *)&pOVar35->address_;\n      uVar20 = (uint)pOVar35->address_;\n      if ((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))) goto LAB_00187f58;\n      if ((uVar17 == uVar13) && (uVar20 == uVar24)) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;\n        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;\n      }\n    }" else (compound_statement "{\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)&pOVar35->field_0x20) goto LAB_001882b0;\n      uVar17 = *(uint *)&pOVar35->address_;\n      uVar20 = (uint)pOVar35->address_;\n      if ((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))) goto LAB_00187f58;\n      if ((uVar17 == uVar13) && (uVar20 == uVar24)) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;\n        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;\n      }\n    }" { (expression_statement "iVar9 = *(int *)(puVar40 + 0x2aa7ac);" (assignment_expression "iVar9 = *(int *)(puVar40 + 0x2aa7ac)" identifier = (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) ))))) ;) (if_statement "if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;" if (parenthesized_expression "(-1 < *(int *)&pOVar36->field_0x20)" ( (binary_expression "-1 < *(int *)&pOVar36->field_0x20" number_literal < (pointer_expression "*(int *)&pOVar36->field_0x20" * (cast_expression "(int *)&pOVar36->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->field_0x20" & (field_expression "pOVar36->field_0x20" identifier -> field_identifier))))) )) (goto_statement "goto LAB_001882b4;" goto statement_identifier ;)) (expression_statement "uVar13 = *(uint *)&pOVar36->address_;" (assignment_expression "uVar13 = *(uint *)&pOVar36->address_" identifier = (pointer_expression "*(uint *)&pOVar36->address_" * (cast_expression "(uint *)&pOVar36->address_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->address_" & (field_expression "pOVar36->address_" identifier -> field_identifier))))) ;) (expression_statement "uVar24 = (uint)pOVar36->address_;" (assignment_expression "uVar24 = (uint)pOVar36->address_" identifier = (cast_expression "(uint)pOVar36->address_" ( (type_descriptor "uint" type_identifier) ) (field_expression "pOVar36->address_" identifier -> field_identifier))) ;) (if_statement "if (-1 < *(int *)&pOVar35->field_0x20) goto LAB_001882b0;" if (parenthesized_expression "(-1 < *(int *)&pOVar35->field_0x20)" ( (binary_expression "-1 < *(int *)&pOVar35->field_0x20" number_literal < (pointer_expression "*(int *)&pOVar35->field_0x20" * (cast_expression "(int *)&pOVar35->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar35->field_0x20" & (field_expression "pOVar35->field_0x20" identifier -> field_identifier))))) )) (goto_statement "goto LAB_001882b0;" goto statement_identifier ;)) (expression_statement "uVar17 = *(uint *)&pOVar35->address_;" (assignment_expression "uVar17 = *(uint *)&pOVar35->address_" identifier = (pointer_expression "*(uint *)&pOVar35->address_" * (cast_expression "(uint *)&pOVar35->address_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar35->address_" & (field_expression "pOVar35->address_" identifier -> field_identifier))))) ;) (expression_statement "uVar20 = (uint)pOVar35->address_;" (assignment_expression "uVar20 = (uint)pOVar35->address_" identifier = (cast_expression "(uint)pOVar35->address_" ( (type_descriptor "uint" type_identifier) ) (field_expression "pOVar35->address_" identifier -> field_identifier))) ;) (if_statement "if ((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))) goto LAB_00187f58;" if (parenthesized_expression "((uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20))))" ( (binary_expression "(uVar13 < uVar17) || ((uVar17 == uVar13 && (uVar24 < uVar20)))" (parenthesized_expression "(uVar13 < uVar17)" ( (binary_expression "uVar13 < uVar17" identifier < identifier) )) || (parenthesized_expression "((uVar17 == uVar13 && (uVar24 < uVar20)))" ( (parenthesized_expression "(uVar17 == uVar13 && (uVar24 < uVar20))" ( (binary_expression "uVar17 == uVar13 && (uVar24 < uVar20)" (binary_expression "uVar17 == uVar13" identifier == identifier) && (parenthesized_expression "(uVar24 < uVar20)" ( (binary_expression "uVar24 < uVar20" identifier < identifier) ))) )) ))) )) (goto_statement "goto LAB_00187f58;" goto statement_identifier ;)) (if_statement "if ((uVar17 == uVar13) && (uVar20 == uVar24)) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;\n        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;\n      }" if (parenthesized_expression "((uVar17 == uVar13) && (uVar20 == uVar24))" ( (binary_expression "(uVar17 == uVar13) && (uVar20 == uVar24)" (parenthesized_expression "(uVar17 == uVar13)" ( (binary_expression "uVar17 == uVar13" identifier == identifier) )) && (parenthesized_expression "(uVar20 == uVar24)" ( (binary_expression "uVar20 == uVar24" identifier == identifier) ))) )) (compound_statement "{\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;\n        if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;\n      }" { (if_statement "if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;" if (parenthesized_expression "(-1 < *(int *)&pOVar36->field_0x20 << 1)" ( (binary_expression "-1 < *(int *)&pOVar36->field_0x20 << 1" number_literal < (binary_expression "*(int *)&pOVar36->field_0x20 << 1" (pointer_expression "*(int *)&pOVar36->field_0x20" * (cast_expression "(int *)&pOVar36->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->field_0x20" & (field_expression "pOVar36->field_0x20" identifier -> field_identifier)))) << number_literal)) )) (goto_statement "goto LAB_001882cc;" goto statement_identifier ;)) (if_statement "if (-1 < *(int *)&pOVar35->field_0x20 << 1) goto LAB_001882cc;" if (parenthesized_expression "(-1 < *(int *)&pOVar35->field_0x20 << 1)" ( (binary_expression "-1 < *(int *)&pOVar35->field_0x20 << 1" number_literal < (binary_expression "*(int *)&pOVar35->field_0x20 << 1" (pointer_expression "*(int *)&pOVar35->field_0x20" * (cast_expression "(int *)&pOVar35->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar35->field_0x20" & (field_expression "pOVar35->field_0x20" identifier -> field_identifier)))) << number_literal)) )) (goto_statement "goto LAB_001882cc;" goto statement_identifier ;)) (if_statement "if ((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))) goto LAB_00187f58;" if (parenthesized_expression "((*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_))))" ( (binary_expression "(*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_) ||\n           ((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))" (parenthesized_expression "(*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_)" ( (binary_expression "*(int *)&pOVar36->data_size_ < *(int *)&pOVar35->data_size_" (pointer_expression "*(int *)&pOVar36->data_size_" * (cast_expression "(int *)&pOVar36->data_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->data_size_" & (field_expression "pOVar36->data_size_" identifier -> field_identifier)))) < (pointer_expression "*(int *)&pOVar35->data_size_" * (cast_expression "(int *)&pOVar35->data_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar35->data_size_" & (field_expression "pOVar35->data_size_" identifier -> field_identifier))))) )) || (parenthesized_expression "((*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)))" ( (parenthesized_expression "(*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_))" ( (binary_expression "*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_ &&\n            ((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)" (binary_expression "*(int *)&pOVar35->data_size_ == *(int *)&pOVar36->data_size_" (pointer_expression "*(int *)&pOVar35->data_size_" * (cast_expression "(int *)&pOVar35->data_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar35->data_size_" & (field_expression "pOVar35->data_size_" identifier -> field_identifier)))) == (pointer_expression "*(int *)&pOVar36->data_size_" * (cast_expression "(int *)&pOVar36->data_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->data_size_" & (field_expression "pOVar36->data_size_" identifier -> field_identifier))))) && (parenthesized_expression "((uint)pOVar36->data_size_ < (uint)pOVar35->data_size_)" ( (binary_expression "(uint)pOVar36->data_size_ < (uint)pOVar35->data_size_" (cast_expression "(uint)pOVar36->data_size_" ( (type_descriptor "uint" type_identifier) ) (field_expression "pOVar36->data_size_" identifier -> field_identifier)) < (cast_expression "(uint)pOVar35->data_size_" ( (type_descriptor "uint" type_identifier) ) (field_expression "pOVar35->data_size_" identifier -> field_identifier))) ))) )) ))) )) (goto_statement "goto LAB_00187f58;" goto statement_identifier ;)) })) }))) (expression_statement "iVar9 = (*pOVar36->_vptr_Output_data[6])();" (assignment_expression "iVar9 = (*pOVar36->_vptr_Output_data[6])()" identifier = (call_expression "(*pOVar36->_vptr_Output_data[6])()" (parenthesized_expression "(*pOVar36->_vptr_Output_data[6])" ( (pointer_expression "*pOVar36->_vptr_Output_data[6]" * (subscript_expression "pOVar36->_vptr_Output_data[6]" (field_expression "pOVar36->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) )) (argument_list "()" ( )))) ;) (if_statement "if ((iVar9 == 0) ||\n       (iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8)) {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c4;\n      piVar14 = &iStack_c4;\n      if (iStack_c4 != 0) goto LAB_00187d18;\nLAB_00187f0c:\n      *piVar14 = (int)pOVar36;\n    }\n    else {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c8;\n      piVar14 = &iStack_c8;\n      if (iStack_c8 == 0) goto LAB_00187f0c;\nLAB_00187d18:\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)(iVar10 + 0x20)) goto LAB_001882b0;\n      uVar17 = *(uint *)(iVar10 + 8);\n      if ((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))\n      goto LAB_00187f0c;\n      if ((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;\n        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;\n        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }\n      }\n    }" if (parenthesized_expression "((iVar9 == 0) ||\n       (iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8))" ( (binary_expression "(iVar9 == 0) ||\n       (iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8)" (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8)" ( (comma_expression "iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34), *(int *)(iVar9 + 0x54) != 8" (assignment_expression "iVar9 = (*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34)" identifier = (call_expression "(*(*ppOVar34)->_vptr_Output_data[9])(*ppOVar34)" (parenthesized_expression "(*(*ppOVar34)->_vptr_Output_data[9])" ( (pointer_expression "*(*ppOVar34)->_vptr_Output_data[9]" * (subscript_expression "(*ppOVar34)->_vptr_Output_data[9]" (field_expression "(*ppOVar34)->_vptr_Output_data" (parenthesized_expression "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )) -> field_identifier) [ number_literal ])) )) (argument_list "(*ppOVar34)" ( (pointer_expression "*ppOVar34" * identifier) )))) , (binary_expression "*(int *)(iVar9 + 0x54) != 8" (pointer_expression "*(int *)(iVar9 + 0x54)" * (cast_expression "(int *)(iVar9 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x54)" ( (binary_expression "iVar9 + 0x54" identifier + number_literal) )))) != number_literal)) ))) )) (compound_statement "{\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c4;\n      piVar14 = &iStack_c4;\n      if (iStack_c4 != 0) goto LAB_00187d18;\nLAB_00187f0c:\n      *piVar14 = (int)pOVar36;\n    }" { (expression_statement "pOVar36 = *ppOVar34;" (assignment_expression "pOVar36 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (expression_statement "iVar10 = iStack_c4;" (assignment_expression "iVar10 = iStack_c4" identifier = identifier) ;) (expression_statement "piVar14 = &iStack_c4;" (assignment_expression "piVar14 = &iStack_c4" identifier = (pointer_expression "&iStack_c4" & identifier)) ;) (if_statement "if (iStack_c4 != 0) goto LAB_00187d18;" if (parenthesized_expression "(iStack_c4 != 0)" ( (binary_expression "iStack_c4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00187d18;" goto statement_identifier ;)) (labeled_statement "LAB_00187f0c:\n      *piVar14 = (int)pOVar36;" statement_identifier : (expression_statement "*piVar14 = (int)pOVar36;" (assignment_expression "*piVar14 = (int)pOVar36" (pointer_expression "*piVar14" * identifier) = (cast_expression "(int)pOVar36" ( (type_descriptor "int" primitive_type) ) identifier)) ;)) }) (else_clause "else {\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c8;\n      piVar14 = &iStack_c8;\n      if (iStack_c8 == 0) goto LAB_00187f0c;\nLAB_00187d18:\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)(iVar10 + 0x20)) goto LAB_001882b0;\n      uVar17 = *(uint *)(iVar10 + 8);\n      if ((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))\n      goto LAB_00187f0c;\n      if ((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;\n        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;\n        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }\n      }\n    }" else (compound_statement "{\n      pOVar36 = *ppOVar34;\n      iVar10 = iStack_c8;\n      piVar14 = &iStack_c8;\n      if (iStack_c8 == 0) goto LAB_00187f0c;\nLAB_00187d18:\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;\n      uVar13 = *(uint *)&pOVar36->address_;\n      uVar24 = (uint)pOVar36->address_;\n      if (-1 < *(int *)(iVar10 + 0x20)) goto LAB_001882b0;\n      uVar17 = *(uint *)(iVar10 + 8);\n      if ((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))\n      goto LAB_00187f0c;\n      if ((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;\n        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;\n        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }\n      }\n    }" { (expression_statement "pOVar36 = *ppOVar34;" (assignment_expression "pOVar36 = *ppOVar34" identifier = (pointer_expression "*ppOVar34" * identifier)) ;) (expression_statement "iVar10 = iStack_c8;" (assignment_expression "iVar10 = iStack_c8" identifier = identifier) ;) (expression_statement "piVar14 = &iStack_c8;" (assignment_expression "piVar14 = &iStack_c8" identifier = (pointer_expression "&iStack_c8" & identifier)) ;) (if_statement "if (iStack_c8 == 0) goto LAB_00187f0c;" if (parenthesized_expression "(iStack_c8 == 0)" ( (binary_expression "iStack_c8 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00187f0c;" goto statement_identifier ;)) (labeled_statement "LAB_00187d18:\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);" statement_identifier : (expression_statement "iVar9 = *(int *)(puVar40 + 0x2aa7ac);" (assignment_expression "iVar9 = *(int *)(puVar40 + 0x2aa7ac)" identifier = (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) ))))) ;)) (if_statement "if (-1 < *(int *)&pOVar36->field_0x20) goto LAB_001882b4;" if (parenthesized_expression "(-1 < *(int *)&pOVar36->field_0x20)" ( (binary_expression "-1 < *(int *)&pOVar36->field_0x20" number_literal < (pointer_expression "*(int *)&pOVar36->field_0x20" * (cast_expression "(int *)&pOVar36->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->field_0x20" & (field_expression "pOVar36->field_0x20" identifier -> field_identifier))))) )) (goto_statement "goto LAB_001882b4;" goto statement_identifier ;)) (expression_statement "uVar13 = *(uint *)&pOVar36->address_;" (assignment_expression "uVar13 = *(uint *)&pOVar36->address_" identifier = (pointer_expression "*(uint *)&pOVar36->address_" * (cast_expression "(uint *)&pOVar36->address_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->address_" & (field_expression "pOVar36->address_" identifier -> field_identifier))))) ;) (expression_statement "uVar24 = (uint)pOVar36->address_;" (assignment_expression "uVar24 = (uint)pOVar36->address_" identifier = (cast_expression "(uint)pOVar36->address_" ( (type_descriptor "uint" type_identifier) ) (field_expression "pOVar36->address_" identifier -> field_identifier))) ;) (if_statement "if (-1 < *(int *)(iVar10 + 0x20)) goto LAB_001882b0;" if (parenthesized_expression "(-1 < *(int *)(iVar10 + 0x20))" ( (binary_expression "-1 < *(int *)(iVar10 + 0x20)" number_literal < (pointer_expression "*(int *)(iVar10 + 0x20)" * (cast_expression "(int *)(iVar10 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x20)" ( (binary_expression "iVar10 + 0x20" identifier + number_literal) ))))) )) (goto_statement "goto LAB_001882b0;" goto statement_identifier ;)) (expression_statement "uVar17 = *(uint *)(iVar10 + 8);" (assignment_expression "uVar17 = *(uint *)(iVar10 + 8)" identifier = (pointer_expression "*(uint *)(iVar10 + 8)" * (cast_expression "(uint *)(iVar10 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 8)" ( (binary_expression "iVar10 + 8" identifier + number_literal) ))))) ;) (if_statement "if ((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))\n      goto LAB_00187f0c;" if (parenthesized_expression "((uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))))" ( (binary_expression "(uVar17 < uVar13) || ((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24)))" (parenthesized_expression "(uVar17 < uVar13)" ( (binary_expression "uVar17 < uVar13" identifier < identifier) )) || (parenthesized_expression "((uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24)))" ( (parenthesized_expression "(uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24))" ( (binary_expression "uVar13 == uVar17 && (*(uint *)(iVar10 + 0xc) < uVar24)" (binary_expression "uVar13 == uVar17" identifier == identifier) && (parenthesized_expression "(*(uint *)(iVar10 + 0xc) < uVar24)" ( (binary_expression "*(uint *)(iVar10 + 0xc) < uVar24" (pointer_expression "*(uint *)(iVar10 + 0xc)" * (cast_expression "(uint *)(iVar10 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0xc)" ( (binary_expression "iVar10 + 0xc" identifier + number_literal) )))) < identifier) ))) )) ))) )) (goto_statement "goto LAB_00187f0c;" goto statement_identifier ;)) (if_statement "if ((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))) {\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;\n        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;\n        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }\n      }" if (parenthesized_expression "((uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc)))" ( (binary_expression "(uVar13 == uVar17) && (uVar24 == *(uint *)(iVar10 + 0xc))" (parenthesized_expression "(uVar13 == uVar17)" ( (binary_expression "uVar13 == uVar17" identifier == identifier) )) && (parenthesized_expression "(uVar24 == *(uint *)(iVar10 + 0xc))" ( (binary_expression "uVar24 == *(uint *)(iVar10 + 0xc)" identifier == (pointer_expression "*(uint *)(iVar10 + 0xc)" * (cast_expression "(uint *)(iVar10 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0xc)" ( (binary_expression "iVar10 + 0xc" identifier + number_literal) ))))) ))) )) (compound_statement "{\n        if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;\n        if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;\n        if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;\n        if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }\n      }" { (if_statement "if (-1 < *(int *)&pOVar36->field_0x20 << 1) goto LAB_001882cc;" if (parenthesized_expression "(-1 < *(int *)&pOVar36->field_0x20 << 1)" ( (binary_expression "-1 < *(int *)&pOVar36->field_0x20 << 1" number_literal < (binary_expression "*(int *)&pOVar36->field_0x20 << 1" (pointer_expression "*(int *)&pOVar36->field_0x20" * (cast_expression "(int *)&pOVar36->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->field_0x20" & (field_expression "pOVar36->field_0x20" identifier -> field_identifier)))) << number_literal)) )) (goto_statement "goto LAB_001882cc;" goto statement_identifier ;)) (if_statement "if (-1 < *(int *)(iVar10 + 0x20) << 1) goto LAB_001882cc;" if (parenthesized_expression "(-1 < *(int *)(iVar10 + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(iVar10 + 0x20) << 1" number_literal < (binary_expression "*(int *)(iVar10 + 0x20) << 1" (pointer_expression "*(int *)(iVar10 + 0x20)" * (cast_expression "(int *)(iVar10 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x20)" ( (binary_expression "iVar10 + 0x20" identifier + number_literal) )))) << number_literal)) )) (goto_statement "goto LAB_001882cc;" goto statement_identifier ;)) (if_statement "if (*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_) goto LAB_00187f0c;" if (parenthesized_expression "(*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_)" ( (binary_expression "*(int *)(iVar10 + 0x10) < *(int *)&pOVar36->data_size_" (pointer_expression "*(int *)(iVar10 + 0x10)" * (cast_expression "(int *)(iVar10 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x10)" ( (binary_expression "iVar10 + 0x10" identifier + number_literal) )))) < (pointer_expression "*(int *)&pOVar36->data_size_" * (cast_expression "(int *)&pOVar36->data_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->data_size_" & (field_expression "pOVar36->data_size_" identifier -> field_identifier))))) )) (goto_statement "goto LAB_00187f0c;" goto statement_identifier ;)) (if_statement "if ((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)) {\n          *piVar14 = (int)pOVar36;\n        }" if (parenthesized_expression "((*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_))" ( (binary_expression "(*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_) &&\n           (*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)" (parenthesized_expression "(*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_)" ( (binary_expression "*(int *)(iVar10 + 0x10) == *(int *)&pOVar36->data_size_" (pointer_expression "*(int *)(iVar10 + 0x10)" * (cast_expression "(int *)(iVar10 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x10)" ( (binary_expression "iVar10 + 0x10" identifier + number_literal) )))) == (pointer_expression "*(int *)&pOVar36->data_size_" * (cast_expression "(int *)&pOVar36->data_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar36->data_size_" & (field_expression "pOVar36->data_size_" identifier -> field_identifier))))) )) && (parenthesized_expression "(*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_)" ( (binary_expression "*(uint *)(iVar10 + 0x14) < (uint)pOVar36->data_size_" (pointer_expression "*(uint *)(iVar10 + 0x14)" * (cast_expression "(uint *)(iVar10 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x14)" ( (binary_expression "iVar10 + 0x14" identifier + number_literal) )))) < (cast_expression "(uint)pOVar36->data_size_" ( (type_descriptor "uint" type_identifier) ) (field_expression "pOVar36->data_size_" identifier -> field_identifier))) ))) )) (compound_statement "{\n          *piVar14 = (int)pOVar36;\n        }" { (expression_statement "*piVar14 = (int)pOVar36;" (assignment_expression "*piVar14 = (int)pOVar36" (pointer_expression "*piVar14" * identifier) = (cast_expression "(int)pOVar36" ( (type_descriptor "int" primitive_type) ) identifier)) ;) })) })) }))) (expression_statement "ppOVar34 = ppOVar34 + 1;" (assignment_expression "ppOVar34 = ppOVar34 + 1" identifier = (binary_expression "ppOVar34 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n           _M_finish != ppOVar34)" ( (binary_expression "this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n           _M_finish != ppOVar34" (field_expression "this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl.\n           _M_finish" (field_expression "this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>._M_impl" (binary_expression "this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_" (binary_expression "this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std::allocator<gold" (binary_expression "this_00->output_lists_[0].\n           super__Vector_base<gold::Output_data*,_std" (binary_expression "this_00->output_lists_[0].\n           super__Vector_base<gold" (field_expression "this_00->output_lists_[0].\n           super__Vector_base" (subscript_expression "this_00->output_lists_[0]" (field_expression "this_00->output_lists_" identifier -> field_identifier) [ number_literal ]) . field_identifier) < identifier) (ERROR "::Output_data" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_data" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) != identifier) )) ;)) (expression_statement "iVar9 = *(int *)(puVar40 + 0x2aa7ac);" (assignment_expression "iVar9 = *(int *)(puVar40 + 0x2aa7ac)" identifier = (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) ))))) ;) (if_statement "if (-1 < *(int *)&pOVar35->field_0x20) {\nLAB_001882b4:\n    (**(code **)(puVar40 + 0x2aa7bc))(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xc5,iVar9 + 0x7850);\n    goto LAB_001882cc;\n  }" if (parenthesized_expression "(-1 < *(int *)&pOVar35->field_0x20)" ( (binary_expression "-1 < *(int *)&pOVar35->field_0x20" number_literal < (pointer_expression "*(int *)&pOVar35->field_0x20" * (cast_expression "(int *)&pOVar35->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar35->field_0x20" & (field_expression "pOVar35->field_0x20" identifier -> field_identifier))))) )) (compound_statement "{\nLAB_001882b4:\n    (**(code **)(puVar40 + 0x2aa7bc))(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xc5,iVar9 + 0x7850);\n    goto LAB_001882cc;\n  }" { (labeled_statement "LAB_001882b4:\n    (**(code **)(puVar40 + 0x2aa7bc))(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xc5,iVar9 + 0x7850);" statement_identifier : (expression_statement "(**(code **)(puVar40 + 0x2aa7bc))(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xc5,iVar9 + 0x7850);" (call_expression "(**(code **)(puVar40 + 0x2aa7bc))(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xc5,iVar9 + 0x7850)" (parenthesized_expression "(**(code **)(puVar40 + 0x2aa7bc))" ( (pointer_expression "**(code **)(puVar40 + 0x2aa7bc)" * (pointer_expression "*(code **)(puVar40 + 0x2aa7bc)" * (cast_expression "(code **)(puVar40 + 0x2aa7bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar40 + 0x2aa7bc)" ( (binary_expression "puVar40 + 0x2aa7bc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xc5,iVar9 + 0x7850)" ( (binary_expression "*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0" (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar9 + 0x7850" identifier + number_literal) ))) ;)) (goto_statement "goto LAB_001882cc;" goto statement_identifier ;) })) (expression_statement "uVar38 = *(undefined4 *)&pOVar35->address_;" (assignment_expression "uVar38 = *(undefined4 *)&pOVar35->address_" identifier = (pointer_expression "*(undefined4 *)&pOVar35->address_" * (cast_expression "(undefined4 *)&pOVar35->address_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar35->address_" & (field_expression "pOVar35->address_" identifier -> field_identifier))))) ;) (expression_statement "p_Var41 = pOVar35->_vptr_Output_data[4];" (assignment_expression "p_Var41 = pOVar35->_vptr_Output_data[4]" identifier = (subscript_expression "pOVar35->_vptr_Output_data[4]" (field_expression "pOVar35->_vptr_Output_data" identifier -> field_identifier) [ number_literal ])) ;) (expression_statement "*(int *)((int)&this_00->vaddr_ + 4) = (int)pOVar35->address_;" (assignment_expression "*(int *)((int)&this_00->vaddr_ + 4) = (int)pOVar35->address_" (pointer_expression "*(int *)((int)&this_00->vaddr_ + 4)" * (cast_expression "(int *)((int)&this_00->vaddr_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->vaddr_ + 4)" ( (binary_expression "(int)&this_00->vaddr_ + 4" (cast_expression "(int)&this_00->vaddr_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->vaddr_" & (field_expression "this_00->vaddr_" identifier -> field_identifier))) + number_literal) )))) = (cast_expression "(int)pOVar35->address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar35->address_" identifier -> field_identifier))) ;) (expression_statement "*(undefined4 *)&this_00->vaddr_ = uVar38;" (assignment_expression "*(undefined4 *)&this_00->vaddr_ = uVar38" (pointer_expression "*(undefined4 *)&this_00->vaddr_" * (cast_expression "(undefined4 *)&this_00->vaddr_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->vaddr_" & (field_expression "this_00->vaddr_" identifier -> field_identifier)))) = identifier) ;) (expression_statement "iVar9 = (*p_Var41)(pOVar35);" (assignment_expression "iVar9 = (*p_Var41)(pOVar35)" identifier = (call_expression "(*p_Var41)(pOVar35)" (parenthesized_expression "(*p_Var41)" ( (pointer_expression "*p_Var41" * identifier) )) (argument_list "(pOVar35)" ( identifier )))) ;) (if_statement "if (iVar9 == 0) {\n    pp_Var23 = *(_func_int_varargs ***)((int)&this_00->vaddr_ + 4);\n    iVar9 = *(int *)&this_00->vaddr_;\nLAB_00187da8:\n    iVar10 = *(int *)&pOVar35->field_0x20;\n    bVar1 = this_00->field_0x1a0;\n    *(_func_int_varargs ***)((int)&this_00->paddr_ + 4) = pp_Var23;\n    *(int *)&this_00->paddr_ = iVar9;\n    this_00->field_0x1a0 = bVar1 & 0xbf | 0x40;\n    if (-1 < iVar10 << 2) {\n      pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n      (*pcVar43)(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(puVar40 + 0x2aa7ac) + 0x7818);\nLAB_00188350:\n      this_01 = (Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec);\n      (*pcVar43)(this_01,0x69,*(int *)(puVar40 + 0x2aa7ac) + 0x78f8);\nLAB_00188368:\n      iVar9 = *(int *)(puVar40 + 0x2acab0) + 0x2a90;\n      Target::abi_pagesize(this_01);\n      if (*(int *)(this_01 + 0x198) == 7) {\n        puVar32 = *(undefined4 **)this_01;\n        puVar16 = *(undefined4 **)(this_01 + 4);\n        uVar38 = 7;\n        if (puVar32 != puVar16) {\n          do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);\n        }\n        return CONCAT44(puVar16,uVar38);\n      }\n      iVar10 = *(int *)(iVar9 + 0x2aa03c) + 0x59f0;\n      (**(code **)(iVar9 + 0x2aa04c))(iVar10,0x12bb,*(int *)(iVar9 + 0x2aa03c) + 0x6fd4);\n      piVar14 = (int *)(iVar10 + 4);\n      uVar11 = extraout_v1_01;\n      do {\n        puVar16 = (undefined4 *)piVar14[-1];\n        if (puVar16 != (undefined4 *)*piVar14) {\n          do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);\n        }\n        piVar14 = piVar14 + 3;\n      } while (piVar14 != (int *)(iVar10 + 0x160));\n      return (uint64_t)uVar11;\n    }\n    uVar38 = *(undefined4 *)&pOVar35->offset_;\n    *(int *)((int)&this_00->offset_ + 4) = (int)pOVar35->offset_;\n    *(undefined4 *)&this_00->offset_ = uVar38;\n    if (iStack_c4 == 0) {\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\nLAB_00187e40:\n      if (-1 < *(int *)(iStack_c8 + 0x20)) {\nLAB_001882b0:\n        iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n        goto LAB_001882b4;\n      }\n      iVar9 = *(int *)(iStack_c8 + 8);\n      uVar13 = *(uint *)(iStack_c8 + 0xc);\n      if (*(int *)(iStack_c8 + 0x20) << 1 < 0) {\n        iVar12 = *(int *)&this_00->vaddr_;\n        uVar17 = (uint)this_00->vaddr_;\n        iVar10 = iStack_c8;\nLAB_00187e60:\n        uVar24 = uVar11 - uVar17;\n        iVar30 = *(int *)(iVar10 + 0x10);\n        uVar28 = (uint)this_00->filesz_;\n        iVar29 = *(int *)&this_00->filesz_;\n        uVar13 = uVar24 + uVar13;\n        EVar25 = this_00->type_;\n        uVar20 = uVar13 + *(int *)(iVar10 + 0x14);\n        uVar39 = uVar28 + uVar11;\n        *(uint *)((int)&this_00->memsz_ + 4) = uVar20;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar39;\n        iVar9 = (uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30;\n        *(int *)&this_00->memsz_ = iVar9;\n        uVar11 = 0x6474e552;\n        *(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29;\n        if (EVar25 == 0x6474e552) {\n          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);\n          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;\n          iVar10 = *(int *)(this_01 + 8);\n          uVar20 = uVar17 + uVar20;\n          if (iVar10 == 0) goto LAB_00188368;\n          iVar29 = *(int *)(iVar10 + 0x5228);\n          iVar10 = *(int *)(iVar10 + 0x522c);\n          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;\n          if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }\n          uVar24 = uVar20 - 1;\n          uVar11 = -(uint)(-iVar10 != 0) - iVar29;\n          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;\n          puVar21 = &DAT_000012a8;\n          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;\n          EVar25 = this_00->type_;\n        }\njoined_r0x001880f8:\n        if (EVar25 != 7) {\n          return CONCAT44(7,uVar11);\n        }\n        uVar46 = maximum_alignment(this_00);\n        if (uVar46 == 0) {\n          uVar13 = *(uint *)&this_00->memsz_;\n          uVar11 = (uint)this_00->memsz_;\n          *(uint *)&this_00->memsz_ = uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n        }\n        else {\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }\n        return CONCAT44(uVar11,uVar13);\n      }\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)(iStack_c4 + 0x20)) goto LAB_001882b4;\n      iVar9 = *(int *)(iStack_c4 + 8);\n      uVar13 = *(uint *)(iStack_c4 + 0xc);\n      if (*(int *)(iStack_c4 + 0x20) << 1 < 0) {\n        iVar10 = *(int *)(iStack_c4 + 0x10);\n        uVar17 = (uint)this_00->vaddr_;\n        uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);\n        iVar12 = *(int *)&this_00->vaddr_;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;\n        *(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17);\n        iVar10 = iStack_c4;\n        if (iStack_c8 != 0) goto LAB_00187e40;\n        goto LAB_00187e60;\n      }\n    }\nLAB_001882cc:\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xcf,*(int *)(puVar40 + 0x2aa7ac) + 0x7894);\nLAB_001882e8:\n    puVar21 = (undefined1 *)0x1257;\n  }\n  else {\n    pp_Var23 = pOVar35->_vptr_Output_data;\n    if (pp_Var23[5] != *(_func_int_varargs **)(puVar40 + 0x2ac750)) {\n      iVar9 = (*pp_Var23[5])(pOVar35);\n      goto LAB_00187da8;\n    }\n    if (*(int *)&pOVar35[3].field_0x20 << 7 < 0) {\n      pp_Var23 = *(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4);\n      iVar9 = *(int *)&pOVar35[1].data_size_;\n      goto LAB_00187da8;\n    }\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,&DAT_0000107b,\n               *(int *)(puVar40 + 0x2aa7ac) + 0x6fe4);\nLAB_00188324:\n    puVar21 = &DAT_000012a8;\n  }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n    pp_Var23 = *(_func_int_varargs ***)((int)&this_00->vaddr_ + 4);\n    iVar9 = *(int *)&this_00->vaddr_;\nLAB_00187da8:\n    iVar10 = *(int *)&pOVar35->field_0x20;\n    bVar1 = this_00->field_0x1a0;\n    *(_func_int_varargs ***)((int)&this_00->paddr_ + 4) = pp_Var23;\n    *(int *)&this_00->paddr_ = iVar9;\n    this_00->field_0x1a0 = bVar1 & 0xbf | 0x40;\n    if (-1 < iVar10 << 2) {\n      pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n      (*pcVar43)(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(puVar40 + 0x2aa7ac) + 0x7818);\nLAB_00188350:\n      this_01 = (Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec);\n      (*pcVar43)(this_01,0x69,*(int *)(puVar40 + 0x2aa7ac) + 0x78f8);\nLAB_00188368:\n      iVar9 = *(int *)(puVar40 + 0x2acab0) + 0x2a90;\n      Target::abi_pagesize(this_01);\n      if (*(int *)(this_01 + 0x198) == 7) {\n        puVar32 = *(undefined4 **)this_01;\n        puVar16 = *(undefined4 **)(this_01 + 4);\n        uVar38 = 7;\n        if (puVar32 != puVar16) {\n          do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);\n        }\n        return CONCAT44(puVar16,uVar38);\n      }\n      iVar10 = *(int *)(iVar9 + 0x2aa03c) + 0x59f0;\n      (**(code **)(iVar9 + 0x2aa04c))(iVar10,0x12bb,*(int *)(iVar9 + 0x2aa03c) + 0x6fd4);\n      piVar14 = (int *)(iVar10 + 4);\n      uVar11 = extraout_v1_01;\n      do {\n        puVar16 = (undefined4 *)piVar14[-1];\n        if (puVar16 != (undefined4 *)*piVar14) {\n          do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);\n        }\n        piVar14 = piVar14 + 3;\n      } while (piVar14 != (int *)(iVar10 + 0x160));\n      return (uint64_t)uVar11;\n    }\n    uVar38 = *(undefined4 *)&pOVar35->offset_;\n    *(int *)((int)&this_00->offset_ + 4) = (int)pOVar35->offset_;\n    *(undefined4 *)&this_00->offset_ = uVar38;\n    if (iStack_c4 == 0) {\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\nLAB_00187e40:\n      if (-1 < *(int *)(iStack_c8 + 0x20)) {\nLAB_001882b0:\n        iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n        goto LAB_001882b4;\n      }\n      iVar9 = *(int *)(iStack_c8 + 8);\n      uVar13 = *(uint *)(iStack_c8 + 0xc);\n      if (*(int *)(iStack_c8 + 0x20) << 1 < 0) {\n        iVar12 = *(int *)&this_00->vaddr_;\n        uVar17 = (uint)this_00->vaddr_;\n        iVar10 = iStack_c8;\nLAB_00187e60:\n        uVar24 = uVar11 - uVar17;\n        iVar30 = *(int *)(iVar10 + 0x10);\n        uVar28 = (uint)this_00->filesz_;\n        iVar29 = *(int *)&this_00->filesz_;\n        uVar13 = uVar24 + uVar13;\n        EVar25 = this_00->type_;\n        uVar20 = uVar13 + *(int *)(iVar10 + 0x14);\n        uVar39 = uVar28 + uVar11;\n        *(uint *)((int)&this_00->memsz_ + 4) = uVar20;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar39;\n        iVar9 = (uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30;\n        *(int *)&this_00->memsz_ = iVar9;\n        uVar11 = 0x6474e552;\n        *(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29;\n        if (EVar25 == 0x6474e552) {\n          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);\n          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;\n          iVar10 = *(int *)(this_01 + 8);\n          uVar20 = uVar17 + uVar20;\n          if (iVar10 == 0) goto LAB_00188368;\n          iVar29 = *(int *)(iVar10 + 0x5228);\n          iVar10 = *(int *)(iVar10 + 0x522c);\n          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;\n          if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }\n          uVar24 = uVar20 - 1;\n          uVar11 = -(uint)(-iVar10 != 0) - iVar29;\n          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;\n          puVar21 = &DAT_000012a8;\n          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;\n          EVar25 = this_00->type_;\n        }\njoined_r0x001880f8:\n        if (EVar25 != 7) {\n          return CONCAT44(7,uVar11);\n        }\n        uVar46 = maximum_alignment(this_00);\n        if (uVar46 == 0) {\n          uVar13 = *(uint *)&this_00->memsz_;\n          uVar11 = (uint)this_00->memsz_;\n          *(uint *)&this_00->memsz_ = uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n        }\n        else {\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }\n        return CONCAT44(uVar11,uVar13);\n      }\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)(iStack_c4 + 0x20)) goto LAB_001882b4;\n      iVar9 = *(int *)(iStack_c4 + 8);\n      uVar13 = *(uint *)(iStack_c4 + 0xc);\n      if (*(int *)(iStack_c4 + 0x20) << 1 < 0) {\n        iVar10 = *(int *)(iStack_c4 + 0x10);\n        uVar17 = (uint)this_00->vaddr_;\n        uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);\n        iVar12 = *(int *)&this_00->vaddr_;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;\n        *(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17);\n        iVar10 = iStack_c4;\n        if (iStack_c8 != 0) goto LAB_00187e40;\n        goto LAB_00187e60;\n      }\n    }\nLAB_001882cc:\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xcf,*(int *)(puVar40 + 0x2aa7ac) + 0x7894);\nLAB_001882e8:\n    puVar21 = (undefined1 *)0x1257;\n  }" { (expression_statement "pp_Var23 = *(_func_int_varargs ***)((int)&this_00->vaddr_ + 4);" (assignment_expression "pp_Var23 = *(_func_int_varargs ***)((int)&this_00->vaddr_ + 4)" identifier = (pointer_expression "*(_func_int_varargs ***)((int)&this_00->vaddr_ + 4)" * (cast_expression "(_func_int_varargs ***)((int)&this_00->vaddr_ + 4)" ( (type_descriptor "_func_int_varargs ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "((int)&this_00->vaddr_ + 4)" ( (binary_expression "(int)&this_00->vaddr_ + 4" (cast_expression "(int)&this_00->vaddr_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->vaddr_" & (field_expression "this_00->vaddr_" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "iVar9 = *(int *)&this_00->vaddr_;" (assignment_expression "iVar9 = *(int *)&this_00->vaddr_" identifier = (pointer_expression "*(int *)&this_00->vaddr_" * (cast_expression "(int *)&this_00->vaddr_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->vaddr_" & (field_expression "this_00->vaddr_" identifier -> field_identifier))))) ;) (labeled_statement "LAB_00187da8:\n    iVar10 = *(int *)&pOVar35->field_0x20;" statement_identifier : (expression_statement "iVar10 = *(int *)&pOVar35->field_0x20;" (assignment_expression "iVar10 = *(int *)&pOVar35->field_0x20" identifier = (pointer_expression "*(int *)&pOVar35->field_0x20" * (cast_expression "(int *)&pOVar35->field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar35->field_0x20" & (field_expression "pOVar35->field_0x20" identifier -> field_identifier))))) ;)) (expression_statement "bVar1 = this_00->field_0x1a0;" (assignment_expression "bVar1 = this_00->field_0x1a0" identifier = (field_expression "this_00->field_0x1a0" identifier -> field_identifier)) ;) (expression_statement "*(_func_int_varargs ***)((int)&this_00->paddr_ + 4) = pp_Var23;" (assignment_expression "*(_func_int_varargs ***)((int)&this_00->paddr_ + 4) = pp_Var23" (pointer_expression "*(_func_int_varargs ***)((int)&this_00->paddr_ + 4)" * (cast_expression "(_func_int_varargs ***)((int)&this_00->paddr_ + 4)" ( (type_descriptor "_func_int_varargs ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "((int)&this_00->paddr_ + 4)" ( (binary_expression "(int)&this_00->paddr_ + 4" (cast_expression "(int)&this_00->paddr_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->paddr_" & (field_expression "this_00->paddr_" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "*(int *)&this_00->paddr_ = iVar9;" (assignment_expression "*(int *)&this_00->paddr_ = iVar9" (pointer_expression "*(int *)&this_00->paddr_" * (cast_expression "(int *)&this_00->paddr_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->paddr_" & (field_expression "this_00->paddr_" identifier -> field_identifier)))) = identifier) ;) (expression_statement "this_00->field_0x1a0 = bVar1 & 0xbf | 0x40;" (assignment_expression "this_00->field_0x1a0 = bVar1 & 0xbf | 0x40" (field_expression "this_00->field_0x1a0" identifier -> field_identifier) = (binary_expression "bVar1 & 0xbf | 0x40" (binary_expression "bVar1 & 0xbf" identifier & number_literal) | number_literal)) ;) (if_statement "if (-1 < iVar10 << 2) {\n      pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n      (*pcVar43)(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(puVar40 + 0x2aa7ac) + 0x7818);\nLAB_00188350:\n      this_01 = (Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec);\n      (*pcVar43)(this_01,0x69,*(int *)(puVar40 + 0x2aa7ac) + 0x78f8);\nLAB_00188368:\n      iVar9 = *(int *)(puVar40 + 0x2acab0) + 0x2a90;\n      Target::abi_pagesize(this_01);\n      if (*(int *)(this_01 + 0x198) == 7) {\n        puVar32 = *(undefined4 **)this_01;\n        puVar16 = *(undefined4 **)(this_01 + 4);\n        uVar38 = 7;\n        if (puVar32 != puVar16) {\n          do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);\n        }\n        return CONCAT44(puVar16,uVar38);\n      }\n      iVar10 = *(int *)(iVar9 + 0x2aa03c) + 0x59f0;\n      (**(code **)(iVar9 + 0x2aa04c))(iVar10,0x12bb,*(int *)(iVar9 + 0x2aa03c) + 0x6fd4);\n      piVar14 = (int *)(iVar10 + 4);\n      uVar11 = extraout_v1_01;\n      do {\n        puVar16 = (undefined4 *)piVar14[-1];\n        if (puVar16 != (undefined4 *)*piVar14) {\n          do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);\n        }\n        piVar14 = piVar14 + 3;\n      } while (piVar14 != (int *)(iVar10 + 0x160));\n      return (uint64_t)uVar11;\n    }" if (parenthesized_expression "(-1 < iVar10 << 2)" ( (binary_expression "-1 < iVar10 << 2" number_literal < (binary_expression "iVar10 << 2" identifier << number_literal)) )) (compound_statement "{\n      pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n      (*pcVar43)(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(puVar40 + 0x2aa7ac) + 0x7818);\nLAB_00188350:\n      this_01 = (Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec);\n      (*pcVar43)(this_01,0x69,*(int *)(puVar40 + 0x2aa7ac) + 0x78f8);\nLAB_00188368:\n      iVar9 = *(int *)(puVar40 + 0x2acab0) + 0x2a90;\n      Target::abi_pagesize(this_01);\n      if (*(int *)(this_01 + 0x198) == 7) {\n        puVar32 = *(undefined4 **)this_01;\n        puVar16 = *(undefined4 **)(this_01 + 4);\n        uVar38 = 7;\n        if (puVar32 != puVar16) {\n          do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);\n        }\n        return CONCAT44(puVar16,uVar38);\n      }\n      iVar10 = *(int *)(iVar9 + 0x2aa03c) + 0x59f0;\n      (**(code **)(iVar9 + 0x2aa04c))(iVar10,0x12bb,*(int *)(iVar9 + 0x2aa03c) + 0x6fd4);\n      piVar14 = (int *)(iVar10 + 4);\n      uVar11 = extraout_v1_01;\n      do {\n        puVar16 = (undefined4 *)piVar14[-1];\n        if (puVar16 != (undefined4 *)*piVar14) {\n          do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);\n        }\n        piVar14 = piVar14 + 3;\n      } while (piVar14 != (int *)(iVar10 + 0x160));\n      return (uint64_t)uVar11;\n    }" { (expression_statement "pcVar43 = *(code **)(puVar40 + 0x2aa7bc);" (assignment_expression "pcVar43 = *(code **)(puVar40 + 0x2aa7bc)" identifier = (pointer_expression "*(code **)(puVar40 + 0x2aa7bc)" * (cast_expression "(code **)(puVar40 + 0x2aa7bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar40 + 0x2aa7bc)" ( (binary_expression "puVar40 + 0x2aa7bc" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar43)(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(puVar40 + 0x2aa7ac) + 0x7818);" (call_expression "(*pcVar43)(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(puVar40 + 0x2aa7ac) + 0x7818)" (parenthesized_expression "(*pcVar43)" ( (pointer_expression "*pcVar43" * identifier) )) (argument_list "(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(puVar40 + 0x2aa7ac) + 0x7818)" ( (binary_expression "*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0" (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar40 + 0x2aa7ac) + 0x7818" (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_00188350:\n      this_01 = (Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec);" statement_identifier : (expression_statement "this_01 = (Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec);" (assignment_expression "this_01 = (Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec)" identifier = (cast_expression "(Target *)(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec)" ( (type_descriptor "Target *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar40 + 0x2aa7ac) + -0x5cec)" ( (binary_expression "*(int *)(puVar40 + 0x2aa7ac) + -0x5cec" (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) )))) + number_literal) )))) ;)) (expression_statement "(*pcVar43)(this_01,0x69,*(int *)(puVar40 + 0x2aa7ac) + 0x78f8);" (call_expression "(*pcVar43)(this_01,0x69,*(int *)(puVar40 + 0x2aa7ac) + 0x78f8)" (parenthesized_expression "(*pcVar43)" ( (pointer_expression "*pcVar43" * identifier) )) (argument_list "(this_01,0x69,*(int *)(puVar40 + 0x2aa7ac) + 0x78f8)" ( identifier , number_literal , (binary_expression "*(int *)(puVar40 + 0x2aa7ac) + 0x78f8" (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_00188368:\n      iVar9 = *(int *)(puVar40 + 0x2acab0) + 0x2a90;" statement_identifier : (expression_statement "iVar9 = *(int *)(puVar40 + 0x2acab0) + 0x2a90;" (assignment_expression "iVar9 = *(int *)(puVar40 + 0x2acab0) + 0x2a90" identifier = (binary_expression "*(int *)(puVar40 + 0x2acab0) + 0x2a90" (pointer_expression "*(int *)(puVar40 + 0x2acab0)" * (cast_expression "(int *)(puVar40 + 0x2acab0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2acab0)" ( (binary_expression "puVar40 + 0x2acab0" identifier + number_literal) )))) + number_literal)) ;)) (labeled_statement "Target::abi_pagesize(this_01);" statement_identifier : (ERROR ":" :) (expression_statement "abi_pagesize(this_01);" (call_expression "abi_pagesize(this_01)" identifier (argument_list "(this_01)" ( identifier ))) ;)) (if_statement "if (*(int *)(this_01 + 0x198) == 7) {\n        puVar32 = *(undefined4 **)this_01;\n        puVar16 = *(undefined4 **)(this_01 + 4);\n        uVar38 = 7;\n        if (puVar32 != puVar16) {\n          do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);\n        }\n        return CONCAT44(puVar16,uVar38);\n      }" if (parenthesized_expression "(*(int *)(this_01 + 0x198) == 7)" ( (binary_expression "*(int *)(this_01 + 0x198) == 7" (pointer_expression "*(int *)(this_01 + 0x198)" * (cast_expression "(int *)(this_01 + 0x198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this_01 + 0x198)" ( (binary_expression "this_01 + 0x198" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        puVar32 = *(undefined4 **)this_01;\n        puVar16 = *(undefined4 **)(this_01 + 4);\n        uVar38 = 7;\n        if (puVar32 != puVar16) {\n          do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);\n        }\n        return CONCAT44(puVar16,uVar38);\n      }" { (expression_statement "puVar32 = *(undefined4 **)this_01;" (assignment_expression "puVar32 = *(undefined4 **)this_01" identifier = (pointer_expression "*(undefined4 **)this_01" * (cast_expression "(undefined4 **)this_01" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "puVar16 = *(undefined4 **)(this_01 + 4);" (assignment_expression "puVar16 = *(undefined4 **)(this_01 + 4)" identifier = (pointer_expression "*(undefined4 **)(this_01 + 4)" * (cast_expression "(undefined4 **)(this_01 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(this_01 + 4)" ( (binary_expression "this_01 + 4" identifier + number_literal) ))))) ;) (expression_statement "uVar38 = 7;" (assignment_expression "uVar38 = 7" identifier = number_literal) ;) (if_statement "if (puVar32 != puVar16) {\n          do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);\n        }" if (parenthesized_expression "(puVar32 != puVar16)" ( (binary_expression "puVar32 != puVar16" identifier != identifier) )) (compound_statement "{\n          do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);\n        }" { (do_statement "do {\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          } while (puVar16 != puVar32);" do (compound_statement "{\n            piVar14 = (int *)*puVar32;\n            puVar32 = puVar32 + 1;\n            (**(code **)(*piVar14 + 0x44))(piVar14);\n            puVar16 = *(undefined4 **)(this_01 + 4);\n            uVar38 = extraout_v1_00;\n          }" { (expression_statement "piVar14 = (int *)*puVar32;" (assignment_expression "piVar14 = (int *)*puVar32" identifier = (cast_expression "(int *)*puVar32" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar32" * identifier))) ;) (expression_statement "puVar32 = puVar32 + 1;" (assignment_expression "puVar32 = puVar32 + 1" identifier = (binary_expression "puVar32 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(*piVar14 + 0x44))(piVar14);" (call_expression "(**(code **)(*piVar14 + 0x44))(piVar14)" (parenthesized_expression "(**(code **)(*piVar14 + 0x44))" ( (pointer_expression "**(code **)(*piVar14 + 0x44)" * (pointer_expression "*(code **)(*piVar14 + 0x44)" * (cast_expression "(code **)(*piVar14 + 0x44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar14 + 0x44)" ( (binary_expression "*piVar14 + 0x44" (pointer_expression "*piVar14" * identifier) + number_literal) ))))) )) (argument_list "(piVar14)" ( identifier ))) ;) (expression_statement "puVar16 = *(undefined4 **)(this_01 + 4);" (assignment_expression "puVar16 = *(undefined4 **)(this_01 + 4)" identifier = (pointer_expression "*(undefined4 **)(this_01 + 4)" * (cast_expression "(undefined4 **)(this_01 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(this_01 + 4)" ( (binary_expression "this_01 + 4" identifier + number_literal) ))))) ;) (expression_statement "uVar38 = extraout_v1_00;" (assignment_expression "uVar38 = extraout_v1_00" identifier = identifier) ;) }) while (parenthesized_expression "(puVar16 != puVar32)" ( (binary_expression "puVar16 != puVar32" identifier != identifier) )) ;) })) (return_statement "return CONCAT44(puVar16,uVar38);" return (call_expression "CONCAT44(puVar16,uVar38)" identifier (argument_list "(puVar16,uVar38)" ( identifier , identifier ))) ;) })) (expression_statement "iVar10 = *(int *)(iVar9 + 0x2aa03c) + 0x59f0;" (assignment_expression "iVar10 = *(int *)(iVar9 + 0x2aa03c) + 0x59f0" identifier = (binary_expression "*(int *)(iVar9 + 0x2aa03c) + 0x59f0" (pointer_expression "*(int *)(iVar9 + 0x2aa03c)" * (cast_expression "(int *)(iVar9 + 0x2aa03c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2aa03c)" ( (binary_expression "iVar9 + 0x2aa03c" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(iVar9 + 0x2aa04c))(iVar10,0x12bb,*(int *)(iVar9 + 0x2aa03c) + 0x6fd4);" (call_expression "(**(code **)(iVar9 + 0x2aa04c))(iVar10,0x12bb,*(int *)(iVar9 + 0x2aa03c) + 0x6fd4)" (parenthesized_expression "(**(code **)(iVar9 + 0x2aa04c))" ( (pointer_expression "**(code **)(iVar9 + 0x2aa04c)" * (pointer_expression "*(code **)(iVar9 + 0x2aa04c)" * (cast_expression "(code **)(iVar9 + 0x2aa04c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x2aa04c)" ( (binary_expression "iVar9 + 0x2aa04c" identifier + number_literal) ))))) )) (argument_list "(iVar10,0x12bb,*(int *)(iVar9 + 0x2aa03c) + 0x6fd4)" ( identifier , number_literal , (binary_expression "*(int *)(iVar9 + 0x2aa03c) + 0x6fd4" (pointer_expression "*(int *)(iVar9 + 0x2aa03c)" * (cast_expression "(int *)(iVar9 + 0x2aa03c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2aa03c)" ( (binary_expression "iVar9 + 0x2aa03c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar14 = (int *)(iVar10 + 4);" (assignment_expression "piVar14 = (int *)(iVar10 + 4)" identifier = (cast_expression "(int *)(iVar10 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 4)" ( (binary_expression "iVar10 + 4" identifier + number_literal) )))) ;) (expression_statement "uVar11 = extraout_v1_01;" (assignment_expression "uVar11 = extraout_v1_01" identifier = identifier) ;) (do_statement "do {\n        puVar16 = (undefined4 *)piVar14[-1];\n        if (puVar16 != (undefined4 *)*piVar14) {\n          do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);\n        }\n        piVar14 = piVar14 + 3;\n      } while (piVar14 != (int *)(iVar10 + 0x160));" do (compound_statement "{\n        puVar16 = (undefined4 *)piVar14[-1];\n        if (puVar16 != (undefined4 *)*piVar14) {\n          do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);\n        }\n        piVar14 = piVar14 + 3;\n      }" { (expression_statement "puVar16 = (undefined4 *)piVar14[-1];" (assignment_expression "puVar16 = (undefined4 *)piVar14[-1]" identifier = (cast_expression "(undefined4 *)piVar14[-1]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar14[-1]" identifier [ number_literal ]))) ;) (if_statement "if (puVar16 != (undefined4 *)*piVar14) {\n          do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);\n        }" if (parenthesized_expression "(puVar16 != (undefined4 *)*piVar14)" ( (binary_expression "puVar16 != (undefined4 *)*piVar14" identifier != (cast_expression "(undefined4 *)*piVar14" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) )) (compound_statement "{\n          do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);\n        }" { (do_statement "do {\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          } while ((undefined4 *)*piVar14 != puVar16);" do (compound_statement "{\n            uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }\n            puVar16 = puVar16 + 1;\n          }" { (expression_statement "uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16);" (assignment_expression "uVar45 = (**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16)" identifier = (call_expression "(**(code **)(*(int *)*puVar16 + 0x18))((int *)*puVar16)" (parenthesized_expression "(**(code **)(*(int *)*puVar16 + 0x18))" ( (pointer_expression "**(code **)(*(int *)*puVar16 + 0x18)" * (pointer_expression "*(code **)(*(int *)*puVar16 + 0x18)" * (cast_expression "(code **)(*(int *)*puVar16 + 0x18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*puVar16 + 0x18)" ( (binary_expression "*(int *)*puVar16 + 0x18" (pointer_expression "*(int *)*puVar16" * (cast_expression "(int *)*puVar16" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar16" * identifier))) + number_literal) ))))) )) (argument_list "((int *)*puVar16)" ( (cast_expression "(int *)*puVar16" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar16" * identifier)) )))) ;) (expression_statement "uVar11 = (uint)uVar45;" (assignment_expression "uVar11 = (uint)uVar45" identifier = (cast_expression "(uint)uVar45" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }" if (parenthesized_expression "((int)((ulonglong)uVar45 >> 0x20) != 0)" ( (binary_expression "(int)((ulonglong)uVar45 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar45 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar45 >> 0x20)" ( (binary_expression "(ulonglong)uVar45 >> 0x20" (cast_expression "(ulonglong)uVar45" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) != number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);\n              return uVar46;\n            }" { comment comment (expression_statement "uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16);" (assignment_expression "uVar46 = (**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16)" identifier = (call_expression "(**(code **)(*(int *)*puVar16 + 0x24))((int *)*puVar16)" (parenthesized_expression "(**(code **)(*(int *)*puVar16 + 0x24))" ( (pointer_expression "**(code **)(*(int *)*puVar16 + 0x24)" * (pointer_expression "*(code **)(*(int *)*puVar16 + 0x24)" * (cast_expression "(code **)(*(int *)*puVar16 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*puVar16 + 0x24)" ( (binary_expression "*(int *)*puVar16 + 0x24" (pointer_expression "*(int *)*puVar16" * (cast_expression "(int *)*puVar16" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar16" * identifier))) + number_literal) ))))) )) (argument_list "((int *)*puVar16)" ( (cast_expression "(int *)*puVar16" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar16" * identifier)) )))) ;) (return_statement "return uVar46;" return identifier ;) })) (expression_statement "puVar16 = puVar16 + 1;" (assignment_expression "puVar16 = puVar16 + 1" identifier = (binary_expression "puVar16 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((undefined4 *)*piVar14 != puVar16)" ( (binary_expression "(undefined4 *)*piVar14 != puVar16" (cast_expression "(undefined4 *)*piVar14" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier)) != identifier) )) ;) })) (expression_statement "piVar14 = piVar14 + 3;" (assignment_expression "piVar14 = piVar14 + 3" identifier = (binary_expression "piVar14 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar14 != (int *)(iVar10 + 0x160))" ( (binary_expression "piVar14 != (int *)(iVar10 + 0x160)" identifier != (cast_expression "(int *)(iVar10 + 0x160)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x160)" ( (binary_expression "iVar10 + 0x160" identifier + number_literal) )))) )) ;) (return_statement "return (uint64_t)uVar11;" return (cast_expression "(uint64_t)uVar11" ( (type_descriptor "uint64_t" primitive_type) ) identifier) ;) })) (expression_statement "uVar38 = *(undefined4 *)&pOVar35->offset_;" (assignment_expression "uVar38 = *(undefined4 *)&pOVar35->offset_" identifier = (pointer_expression "*(undefined4 *)&pOVar35->offset_" * (cast_expression "(undefined4 *)&pOVar35->offset_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar35->offset_" & (field_expression "pOVar35->offset_" identifier -> field_identifier))))) ;) (expression_statement "*(int *)((int)&this_00->offset_ + 4) = (int)pOVar35->offset_;" (assignment_expression "*(int *)((int)&this_00->offset_ + 4) = (int)pOVar35->offset_" (pointer_expression "*(int *)((int)&this_00->offset_ + 4)" * (cast_expression "(int *)((int)&this_00->offset_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->offset_ + 4)" ( (binary_expression "(int)&this_00->offset_ + 4" (cast_expression "(int)&this_00->offset_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->offset_" & (field_expression "this_00->offset_" identifier -> field_identifier))) + number_literal) )))) = (cast_expression "(int)pOVar35->offset_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar35->offset_" identifier -> field_identifier))) ;) (expression_statement "*(undefined4 *)&this_00->offset_ = uVar38;" (assignment_expression "*(undefined4 *)&this_00->offset_ = uVar38" (pointer_expression "*(undefined4 *)&this_00->offset_" * (cast_expression "(undefined4 *)&this_00->offset_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->offset_" & (field_expression "this_00->offset_" identifier -> field_identifier)))) = identifier) ;) (if_statement "if (iStack_c4 == 0) {\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\nLAB_00187e40:\n      if (-1 < *(int *)(iStack_c8 + 0x20)) {\nLAB_001882b0:\n        iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n        goto LAB_001882b4;\n      }\n      iVar9 = *(int *)(iStack_c8 + 8);\n      uVar13 = *(uint *)(iStack_c8 + 0xc);\n      if (*(int *)(iStack_c8 + 0x20) << 1 < 0) {\n        iVar12 = *(int *)&this_00->vaddr_;\n        uVar17 = (uint)this_00->vaddr_;\n        iVar10 = iStack_c8;\nLAB_00187e60:\n        uVar24 = uVar11 - uVar17;\n        iVar30 = *(int *)(iVar10 + 0x10);\n        uVar28 = (uint)this_00->filesz_;\n        iVar29 = *(int *)&this_00->filesz_;\n        uVar13 = uVar24 + uVar13;\n        EVar25 = this_00->type_;\n        uVar20 = uVar13 + *(int *)(iVar10 + 0x14);\n        uVar39 = uVar28 + uVar11;\n        *(uint *)((int)&this_00->memsz_ + 4) = uVar20;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar39;\n        iVar9 = (uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30;\n        *(int *)&this_00->memsz_ = iVar9;\n        uVar11 = 0x6474e552;\n        *(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29;\n        if (EVar25 == 0x6474e552) {\n          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);\n          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;\n          iVar10 = *(int *)(this_01 + 8);\n          uVar20 = uVar17 + uVar20;\n          if (iVar10 == 0) goto LAB_00188368;\n          iVar29 = *(int *)(iVar10 + 0x5228);\n          iVar10 = *(int *)(iVar10 + 0x522c);\n          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;\n          if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }\n          uVar24 = uVar20 - 1;\n          uVar11 = -(uint)(-iVar10 != 0) - iVar29;\n          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;\n          puVar21 = &DAT_000012a8;\n          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;\n          EVar25 = this_00->type_;\n        }\njoined_r0x001880f8:\n        if (EVar25 != 7) {\n          return CONCAT44(7,uVar11);\n        }\n        uVar46 = maximum_alignment(this_00);\n        if (uVar46 == 0) {\n          uVar13 = *(uint *)&this_00->memsz_;\n          uVar11 = (uint)this_00->memsz_;\n          *(uint *)&this_00->memsz_ = uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n        }\n        else {\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }\n        return CONCAT44(uVar11,uVar13);\n      }\n    }\n    else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)(iStack_c4 + 0x20)) goto LAB_001882b4;\n      iVar9 = *(int *)(iStack_c4 + 8);\n      uVar13 = *(uint *)(iStack_c4 + 0xc);\n      if (*(int *)(iStack_c4 + 0x20) << 1 < 0) {\n        iVar10 = *(int *)(iStack_c4 + 0x10);\n        uVar17 = (uint)this_00->vaddr_;\n        uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);\n        iVar12 = *(int *)&this_00->vaddr_;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;\n        *(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17);\n        iVar10 = iStack_c4;\n        if (iStack_c8 != 0) goto LAB_00187e40;\n        goto LAB_00187e60;\n      }\n    }" if (parenthesized_expression "(iStack_c4 == 0)" ( (binary_expression "iStack_c4 == 0" identifier == number_literal) )) (compound_statement "{\n      *(undefined4 *)((int)&this_00->filesz_ + 4) = 0;\n      *(undefined4 *)&this_00->filesz_ = 0;\nLAB_00187e40:\n      if (-1 < *(int *)(iStack_c8 + 0x20)) {\nLAB_001882b0:\n        iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n        goto LAB_001882b4;\n      }\n      iVar9 = *(int *)(iStack_c8 + 8);\n      uVar13 = *(uint *)(iStack_c8 + 0xc);\n      if (*(int *)(iStack_c8 + 0x20) << 1 < 0) {\n        iVar12 = *(int *)&this_00->vaddr_;\n        uVar17 = (uint)this_00->vaddr_;\n        iVar10 = iStack_c8;\nLAB_00187e60:\n        uVar24 = uVar11 - uVar17;\n        iVar30 = *(int *)(iVar10 + 0x10);\n        uVar28 = (uint)this_00->filesz_;\n        iVar29 = *(int *)&this_00->filesz_;\n        uVar13 = uVar24 + uVar13;\n        EVar25 = this_00->type_;\n        uVar20 = uVar13 + *(int *)(iVar10 + 0x14);\n        uVar39 = uVar28 + uVar11;\n        *(uint *)((int)&this_00->memsz_ + 4) = uVar20;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar39;\n        iVar9 = (uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30;\n        *(int *)&this_00->memsz_ = iVar9;\n        uVar11 = 0x6474e552;\n        *(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29;\n        if (EVar25 == 0x6474e552) {\n          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);\n          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;\n          iVar10 = *(int *)(this_01 + 8);\n          uVar20 = uVar17 + uVar20;\n          if (iVar10 == 0) goto LAB_00188368;\n          iVar29 = *(int *)(iVar10 + 0x5228);\n          iVar10 = *(int *)(iVar10 + 0x522c);\n          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;\n          if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }\n          uVar24 = uVar20 - 1;\n          uVar11 = -(uint)(-iVar10 != 0) - iVar29;\n          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;\n          puVar21 = &DAT_000012a8;\n          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;\n          EVar25 = this_00->type_;\n        }\njoined_r0x001880f8:\n        if (EVar25 != 7) {\n          return CONCAT44(7,uVar11);\n        }\n        uVar46 = maximum_alignment(this_00);\n        if (uVar46 == 0) {\n          uVar13 = *(uint *)&this_00->memsz_;\n          uVar11 = (uint)this_00->memsz_;\n          *(uint *)&this_00->memsz_ = uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n        }\n        else {\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }\n        return CONCAT44(uVar11,uVar13);\n      }\n    }" { (expression_statement "*(undefined4 *)((int)&this_00->filesz_ + 4) = 0;" (assignment_expression "*(undefined4 *)((int)&this_00->filesz_ + 4) = 0" (pointer_expression "*(undefined4 *)((int)&this_00->filesz_ + 4)" * (cast_expression "(undefined4 *)((int)&this_00->filesz_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->filesz_ + 4)" ( (binary_expression "(int)&this_00->filesz_ + 4" (cast_expression "(int)&this_00->filesz_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->filesz_" & (field_expression "this_00->filesz_" identifier -> field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)&this_00->filesz_ = 0;" (assignment_expression "*(undefined4 *)&this_00->filesz_ = 0" (pointer_expression "*(undefined4 *)&this_00->filesz_" * (cast_expression "(undefined4 *)&this_00->filesz_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->filesz_" & (field_expression "this_00->filesz_" identifier -> field_identifier)))) = number_literal) ;) (labeled_statement "LAB_00187e40:\n      if (-1 < *(int *)(iStack_c8 + 0x20)) {\nLAB_001882b0:\n        iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n        goto LAB_001882b4;\n      }" statement_identifier : (if_statement "if (-1 < *(int *)(iStack_c8 + 0x20)) {\nLAB_001882b0:\n        iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n        goto LAB_001882b4;\n      }" if (parenthesized_expression "(-1 < *(int *)(iStack_c8 + 0x20))" ( (binary_expression "-1 < *(int *)(iStack_c8 + 0x20)" number_literal < (pointer_expression "*(int *)(iStack_c8 + 0x20)" * (cast_expression "(int *)(iStack_c8 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_c8 + 0x20)" ( (binary_expression "iStack_c8 + 0x20" identifier + number_literal) ))))) )) (compound_statement "{\nLAB_001882b0:\n        iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n        goto LAB_001882b4;\n      }" { (labeled_statement "LAB_001882b0:\n        iVar9 = *(int *)(puVar40 + 0x2aa7ac);" statement_identifier : (expression_statement "iVar9 = *(int *)(puVar40 + 0x2aa7ac);" (assignment_expression "iVar9 = *(int *)(puVar40 + 0x2aa7ac)" identifier = (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) ))))) ;)) (goto_statement "goto LAB_001882b4;" goto statement_identifier ;) }))) (expression_statement "iVar9 = *(int *)(iStack_c8 + 8);" (assignment_expression "iVar9 = *(int *)(iStack_c8 + 8)" identifier = (pointer_expression "*(int *)(iStack_c8 + 8)" * (cast_expression "(int *)(iStack_c8 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_c8 + 8)" ( (binary_expression "iStack_c8 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar13 = *(uint *)(iStack_c8 + 0xc);" (assignment_expression "uVar13 = *(uint *)(iStack_c8 + 0xc)" identifier = (pointer_expression "*(uint *)(iStack_c8 + 0xc)" * (cast_expression "(uint *)(iStack_c8 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_c8 + 0xc)" ( (binary_expression "iStack_c8 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(iStack_c8 + 0x20) << 1 < 0) {\n        iVar12 = *(int *)&this_00->vaddr_;\n        uVar17 = (uint)this_00->vaddr_;\n        iVar10 = iStack_c8;\nLAB_00187e60:\n        uVar24 = uVar11 - uVar17;\n        iVar30 = *(int *)(iVar10 + 0x10);\n        uVar28 = (uint)this_00->filesz_;\n        iVar29 = *(int *)&this_00->filesz_;\n        uVar13 = uVar24 + uVar13;\n        EVar25 = this_00->type_;\n        uVar20 = uVar13 + *(int *)(iVar10 + 0x14);\n        uVar39 = uVar28 + uVar11;\n        *(uint *)((int)&this_00->memsz_ + 4) = uVar20;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar39;\n        iVar9 = (uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30;\n        *(int *)&this_00->memsz_ = iVar9;\n        uVar11 = 0x6474e552;\n        *(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29;\n        if (EVar25 == 0x6474e552) {\n          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);\n          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;\n          iVar10 = *(int *)(this_01 + 8);\n          uVar20 = uVar17 + uVar20;\n          if (iVar10 == 0) goto LAB_00188368;\n          iVar29 = *(int *)(iVar10 + 0x5228);\n          iVar10 = *(int *)(iVar10 + 0x522c);\n          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;\n          if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }\n          uVar24 = uVar20 - 1;\n          uVar11 = -(uint)(-iVar10 != 0) - iVar29;\n          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;\n          puVar21 = &DAT_000012a8;\n          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;\n          EVar25 = this_00->type_;\n        }\njoined_r0x001880f8:\n        if (EVar25 != 7) {\n          return CONCAT44(7,uVar11);\n        }\n        uVar46 = maximum_alignment(this_00);\n        if (uVar46 == 0) {\n          uVar13 = *(uint *)&this_00->memsz_;\n          uVar11 = (uint)this_00->memsz_;\n          *(uint *)&this_00->memsz_ = uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n        }\n        else {\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }\n        return CONCAT44(uVar11,uVar13);\n      }" if (parenthesized_expression "(*(int *)(iStack_c8 + 0x20) << 1 < 0)" ( (binary_expression "*(int *)(iStack_c8 + 0x20) << 1 < 0" (binary_expression "*(int *)(iStack_c8 + 0x20) << 1" (pointer_expression "*(int *)(iStack_c8 + 0x20)" * (cast_expression "(int *)(iStack_c8 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_c8 + 0x20)" ( (binary_expression "iStack_c8 + 0x20" identifier + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n        iVar12 = *(int *)&this_00->vaddr_;\n        uVar17 = (uint)this_00->vaddr_;\n        iVar10 = iStack_c8;\nLAB_00187e60:\n        uVar24 = uVar11 - uVar17;\n        iVar30 = *(int *)(iVar10 + 0x10);\n        uVar28 = (uint)this_00->filesz_;\n        iVar29 = *(int *)&this_00->filesz_;\n        uVar13 = uVar24 + uVar13;\n        EVar25 = this_00->type_;\n        uVar20 = uVar13 + *(int *)(iVar10 + 0x14);\n        uVar39 = uVar28 + uVar11;\n        *(uint *)((int)&this_00->memsz_ + 4) = uVar20;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar39;\n        iVar9 = (uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30;\n        *(int *)&this_00->memsz_ = iVar9;\n        uVar11 = 0x6474e552;\n        *(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29;\n        if (EVar25 == 0x6474e552) {\n          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);\n          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;\n          iVar10 = *(int *)(this_01 + 8);\n          uVar20 = uVar17 + uVar20;\n          if (iVar10 == 0) goto LAB_00188368;\n          iVar29 = *(int *)(iVar10 + 0x5228);\n          iVar10 = *(int *)(iVar10 + 0x522c);\n          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;\n          if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }\n          uVar24 = uVar20 - 1;\n          uVar11 = -(uint)(-iVar10 != 0) - iVar29;\n          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;\n          puVar21 = &DAT_000012a8;\n          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;\n          EVar25 = this_00->type_;\n        }\njoined_r0x001880f8:\n        if (EVar25 != 7) {\n          return CONCAT44(7,uVar11);\n        }\n        uVar46 = maximum_alignment(this_00);\n        if (uVar46 == 0) {\n          uVar13 = *(uint *)&this_00->memsz_;\n          uVar11 = (uint)this_00->memsz_;\n          *(uint *)&this_00->memsz_ = uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n        }\n        else {\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }\n        return CONCAT44(uVar11,uVar13);\n      }" { (expression_statement "iVar12 = *(int *)&this_00->vaddr_;" (assignment_expression "iVar12 = *(int *)&this_00->vaddr_" identifier = (pointer_expression "*(int *)&this_00->vaddr_" * (cast_expression "(int *)&this_00->vaddr_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->vaddr_" & (field_expression "this_00->vaddr_" identifier -> field_identifier))))) ;) (expression_statement "uVar17 = (uint)this_00->vaddr_;" (assignment_expression "uVar17 = (uint)this_00->vaddr_" identifier = (cast_expression "(uint)this_00->vaddr_" ( (type_descriptor "uint" type_identifier) ) (field_expression "this_00->vaddr_" identifier -> field_identifier))) ;) (expression_statement "iVar10 = iStack_c8;" (assignment_expression "iVar10 = iStack_c8" identifier = identifier) ;) (labeled_statement "LAB_00187e60:\n        uVar24 = uVar11 - uVar17;" statement_identifier : (expression_statement "uVar24 = uVar11 - uVar17;" (assignment_expression "uVar24 = uVar11 - uVar17" identifier = (binary_expression "uVar11 - uVar17" identifier - identifier)) ;)) (expression_statement "iVar30 = *(int *)(iVar10 + 0x10);" (assignment_expression "iVar30 = *(int *)(iVar10 + 0x10)" identifier = (pointer_expression "*(int *)(iVar10 + 0x10)" * (cast_expression "(int *)(iVar10 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x10)" ( (binary_expression "iVar10 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "uVar28 = (uint)this_00->filesz_;" (assignment_expression "uVar28 = (uint)this_00->filesz_" identifier = (cast_expression "(uint)this_00->filesz_" ( (type_descriptor "uint" type_identifier) ) (field_expression "this_00->filesz_" identifier -> field_identifier))) ;) (expression_statement "iVar29 = *(int *)&this_00->filesz_;" (assignment_expression "iVar29 = *(int *)&this_00->filesz_" identifier = (pointer_expression "*(int *)&this_00->filesz_" * (cast_expression "(int *)&this_00->filesz_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->filesz_" & (field_expression "this_00->filesz_" identifier -> field_identifier))))) ;) (expression_statement "uVar13 = uVar24 + uVar13;" (assignment_expression "uVar13 = uVar24 + uVar13" identifier = (binary_expression "uVar24 + uVar13" identifier + identifier)) ;) (expression_statement "EVar25 = this_00->type_;" (assignment_expression "EVar25 = this_00->type_" identifier = (field_expression "this_00->type_" identifier -> field_identifier)) ;) (expression_statement "uVar20 = uVar13 + *(int *)(iVar10 + 0x14);" (assignment_expression "uVar20 = uVar13 + *(int *)(iVar10 + 0x14)" identifier = (binary_expression "uVar13 + *(int *)(iVar10 + 0x14)" identifier + (pointer_expression "*(int *)(iVar10 + 0x14)" * (cast_expression "(int *)(iVar10 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x14)" ( (binary_expression "iVar10 + 0x14" identifier + number_literal) )))))) ;) (expression_statement "uVar39 = uVar28 + uVar11;" (assignment_expression "uVar39 = uVar28 + uVar11" identifier = (binary_expression "uVar28 + uVar11" identifier + identifier)) ;) (expression_statement "*(uint *)((int)&this_00->memsz_ + 4) = uVar20;" (assignment_expression "*(uint *)((int)&this_00->memsz_ + 4) = uVar20" (pointer_expression "*(uint *)((int)&this_00->memsz_ + 4)" * (cast_expression "(uint *)((int)&this_00->memsz_ + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->memsz_ + 4)" ( (binary_expression "(int)&this_00->memsz_ + 4" (cast_expression "(int)&this_00->memsz_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)((int)&this_00->filesz_ + 4) = uVar39;" (assignment_expression "*(uint *)((int)&this_00->filesz_ + 4) = uVar39" (pointer_expression "*(uint *)((int)&this_00->filesz_ + 4)" * (cast_expression "(uint *)((int)&this_00->filesz_ + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->filesz_ + 4)" ( (binary_expression "(int)&this_00->filesz_ + 4" (cast_expression "(int)&this_00->filesz_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->filesz_" & (field_expression "this_00->filesz_" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "iVar9 = (uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30;" (assignment_expression "iVar9 = (uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30" identifier = (binary_expression "(uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12) + iVar30" (binary_expression "(uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24) + ((iVar9 - (uint)(uVar11 < uVar24)) - iVar12)" (binary_expression "(uint)(uVar20 < uVar13) +\n                (uint)(uVar13 < uVar24)" (call_expression "(uint)(uVar20 < uVar13)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar20 < uVar13)" ( (binary_expression "uVar20 < uVar13" identifier < identifier) ))) + (call_expression "(uint)(uVar13 < uVar24)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar13 < uVar24)" ( (binary_expression "uVar13 < uVar24" identifier < identifier) )))) + (parenthesized_expression "((iVar9 - (uint)(uVar11 < uVar24)) - iVar12)" ( (binary_expression "(iVar9 - (uint)(uVar11 < uVar24)) - iVar12" (parenthesized_expression "(iVar9 - (uint)(uVar11 < uVar24))" ( (binary_expression "iVar9 - (uint)(uVar11 < uVar24)" identifier - (call_expression "(uint)(uVar11 < uVar24)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar11 < uVar24)" ( (binary_expression "uVar11 < uVar24" identifier < identifier) )))) )) - identifier) ))) + identifier)) ;) (expression_statement "*(int *)&this_00->memsz_ = iVar9;" (assignment_expression "*(int *)&this_00->memsz_ = iVar9" (pointer_expression "*(int *)&this_00->memsz_" * (cast_expression "(int *)&this_00->memsz_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier)))) = identifier) ;) (expression_statement "uVar11 = 0x6474e552;" (assignment_expression "uVar11 = 0x6474e552" identifier = number_literal) ;) (expression_statement "*(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29;" (assignment_expression "*(uint *)&this_00->filesz_ = (uint)(uVar39 < uVar28) + iVar29" (pointer_expression "*(uint *)&this_00->filesz_" * (cast_expression "(uint *)&this_00->filesz_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->filesz_" & (field_expression "this_00->filesz_" identifier -> field_identifier)))) = (binary_expression "(uint)(uVar39 < uVar28) + iVar29" (call_expression "(uint)(uVar39 < uVar28)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar39 < uVar28)" ( (binary_expression "uVar39 < uVar28" identifier < identifier) ))) + identifier)) ;) (if_statement "if (EVar25 == 0x6474e552) {\n          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);\n          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;\n          iVar10 = *(int *)(this_01 + 8);\n          uVar20 = uVar17 + uVar20;\n          if (iVar10 == 0) goto LAB_00188368;\n          iVar29 = *(int *)(iVar10 + 0x5228);\n          iVar10 = *(int *)(iVar10 + 0x522c);\n          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;\n          if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }\n          uVar24 = uVar20 - 1;\n          uVar11 = -(uint)(-iVar10 != 0) - iVar29;\n          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;\n          puVar21 = &DAT_000012a8;\n          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;\n          EVar25 = this_00->type_;\n        }" if (parenthesized_expression "(EVar25 == 0x6474e552)" ( (binary_expression "EVar25 == 0x6474e552" identifier == number_literal) )) (compound_statement "{\n          this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);\n          pcVar43 = *(code **)(puVar40 + 0x2aa7bc);\n          if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;\n          iVar10 = *(int *)(this_01 + 8);\n          uVar20 = uVar17 + uVar20;\n          if (iVar10 == 0) goto LAB_00188368;\n          iVar29 = *(int *)(iVar10 + 0x5228);\n          iVar10 = *(int *)(iVar10 + 0x522c);\n          uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;\n          if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }\n          uVar24 = uVar20 - 1;\n          uVar11 = -(uint)(-iVar10 != 0) - iVar29;\n          if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;\n          puVar21 = &DAT_000012a8;\n          if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;\n          EVar25 = this_00->type_;\n        }" { (expression_statement "this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8);" (assignment_expression "this_01 = (Target *)**(int **)(puVar40 + 0x2aafd8)" identifier = (cast_expression "(Target *)**(int **)(puVar40 + 0x2aafd8)" ( (type_descriptor "Target *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(int **)(puVar40 + 0x2aafd8)" * (pointer_expression "*(int **)(puVar40 + 0x2aafd8)" * (cast_expression "(int **)(puVar40 + 0x2aafd8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar40 + 0x2aafd8)" ( (binary_expression "puVar40 + 0x2aafd8" identifier + number_literal) ))))))) ;) (expression_statement "pcVar43 = *(code **)(puVar40 + 0x2aa7bc);" (assignment_expression "pcVar43 = *(code **)(puVar40 + 0x2aa7bc)" identifier = (pointer_expression "*(code **)(puVar40 + 0x2aa7bc)" * (cast_expression "(code **)(puVar40 + 0x2aa7bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar40 + 0x2aa7bc)" ( (binary_expression "puVar40 + 0x2aa7bc" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(this_01 + 0xc) == 0) goto LAB_00188350;" if (parenthesized_expression "(*(int *)(this_01 + 0xc) == 0)" ( (binary_expression "*(int *)(this_01 + 0xc) == 0" (pointer_expression "*(int *)(this_01 + 0xc)" * (cast_expression "(int *)(this_01 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this_01 + 0xc)" ( (binary_expression "this_01 + 0xc" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_00188350;" goto statement_identifier ;)) (expression_statement "iVar10 = *(int *)(this_01 + 8);" (assignment_expression "iVar10 = *(int *)(this_01 + 8)" identifier = (pointer_expression "*(int *)(this_01 + 8)" * (cast_expression "(int *)(this_01 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this_01 + 8)" ( (binary_expression "this_01 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar20 = uVar17 + uVar20;" (assignment_expression "uVar20 = uVar17 + uVar20" identifier = (binary_expression "uVar17 + uVar20" identifier + identifier)) ;) (if_statement "if (iVar10 == 0) goto LAB_00188368;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00188368;" goto statement_identifier ;)) (expression_statement "iVar29 = *(int *)(iVar10 + 0x5228);" (assignment_expression "iVar29 = *(int *)(iVar10 + 0x5228)" identifier = (pointer_expression "*(int *)(iVar10 + 0x5228)" * (cast_expression "(int *)(iVar10 + 0x5228)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x5228)" ( (binary_expression "iVar10 + 0x5228" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(iVar10 + 0x522c);" (assignment_expression "iVar10 = *(int *)(iVar10 + 0x522c)" identifier = (pointer_expression "*(int *)(iVar10 + 0x522c)" * (cast_expression "(int *)(iVar10 + 0x522c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x522c)" ( (binary_expression "iVar10 + 0x522c" identifier + number_literal) ))))) ;) (expression_statement "uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9;" (assignment_expression "uVar13 = (uint)(uVar20 < uVar17) + iVar12 + iVar9" identifier = (binary_expression "(uint)(uVar20 < uVar17) + iVar12 + iVar9" (binary_expression "(uint)(uVar20 < uVar17) + iVar12" (call_expression "(uint)(uVar20 < uVar17)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar20 < uVar17)" ( (binary_expression "uVar20 < uVar17" identifier < identifier) ))) + identifier) + identifier)) ;) (if_statement "if (iVar29 == 0 && iVar10 == 0) {\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }\n          else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }" if (parenthesized_expression "(iVar29 == 0 && iVar10 == 0)" ( (binary_expression "iVar29 == 0 && iVar10 == 0" (binary_expression "iVar29 == 0" identifier == number_literal) && (binary_expression "iVar10 == 0" identifier == number_literal)) )) (compound_statement "{\n            iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);\n            iVar29 = *(int *)(iVar9 + 0x20);\n            iVar10 = *(int *)(iVar9 + 0x24);\n            uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();\n            uVar11 = (uint)uVar45;\n            if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }\n            if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }\n          }" { (expression_statement "iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4);" (assignment_expression "iVar9 = *(int *)(*(int *)(this_01 + 0xc) + 4)" identifier = (pointer_expression "*(int *)(*(int *)(this_01 + 0xc) + 4)" * (cast_expression "(int *)(*(int *)(this_01 + 0xc) + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(this_01 + 0xc) + 4)" ( (binary_expression "*(int *)(this_01 + 0xc) + 4" (pointer_expression "*(int *)(this_01 + 0xc)" * (cast_expression "(int *)(this_01 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this_01 + 0xc)" ( (binary_expression "this_01 + 0xc" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "iVar29 = *(int *)(iVar9 + 0x20);" (assignment_expression "iVar29 = *(int *)(iVar9 + 0x20)" identifier = (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) ))))) ;) (expression_statement "iVar10 = *(int *)(iVar9 + 0x24);" (assignment_expression "iVar10 = *(int *)(iVar9 + 0x24)" identifier = (pointer_expression "*(int *)(iVar9 + 0x24)" * (cast_expression "(int *)(iVar9 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x24)" ( (binary_expression "iVar9 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "uVar45 = (**(code **)(puVar40 + 0x2ab2a8))();" (assignment_expression "uVar45 = (**(code **)(puVar40 + 0x2ab2a8))()" identifier = (call_expression "(**(code **)(puVar40 + 0x2ab2a8))()" (parenthesized_expression "(**(code **)(puVar40 + 0x2ab2a8))" ( (pointer_expression "**(code **)(puVar40 + 0x2ab2a8)" * (pointer_expression "*(code **)(puVar40 + 0x2ab2a8)" * (cast_expression "(code **)(puVar40 + 0x2ab2a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar40 + 0x2ab2a8)" ( (binary_expression "puVar40 + 0x2ab2a8" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "uVar11 = (uint)uVar45;" (assignment_expression "uVar11 = (uint)uVar45" identifier = (cast_expression "(uint)uVar45" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if ((int)((ulonglong)uVar45 >> 0x20) != 0) {\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }" if (parenthesized_expression "((int)((ulonglong)uVar45 >> 0x20) != 0)" ( (binary_expression "(int)((ulonglong)uVar45 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar45 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar45 >> 0x20)" ( (binary_expression "(ulonglong)uVar45 >> 0x20" (cast_expression "(ulonglong)uVar45" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) != number_literal) )) (compound_statement "{\n              if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;\n              goto LAB_001881ec;\n            }" { (if_statement "if (iVar29 != 0 || iVar10 != 0) goto LAB_00188264;" if (parenthesized_expression "(iVar29 != 0 || iVar10 != 0)" ( (binary_expression "iVar29 != 0 || iVar10 != 0" (binary_expression "iVar29 != 0" identifier != number_literal) || (binary_expression "iVar10 != 0" identifier != number_literal)) )) (goto_statement "goto LAB_00188264;" goto statement_identifier ;)) (goto_statement "goto LAB_001881ec;" goto statement_identifier ;) })) (if_statement "if (iVar29 == 0 && iVar10 == 0) {\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }" if (parenthesized_expression "(iVar29 == 0 && iVar10 == 0)" ( (binary_expression "iVar29 == 0 && iVar10 == 0" (binary_expression "iVar29 == 0" identifier == number_literal) && (binary_expression "iVar10 == 0" identifier == number_literal)) )) (compound_statement "{\n              EVar25 = this_00->type_;\n              goto joined_r0x001880f8;\n            }" { (expression_statement "EVar25 = this_00->type_;" (assignment_expression "EVar25 = this_00->type_" identifier = (field_expression "this_00->type_" identifier -> field_identifier)) ;) (goto_statement "goto joined_r0x001880f8;" goto statement_identifier ;) })) }) (else_clause "else {\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }" else (compound_statement "{\n            iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();\n            if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }\n          }" { (expression_statement "iVar9 = (**(code **)(puVar40 + 0x2ab2a8))();" (assignment_expression "iVar9 = (**(code **)(puVar40 + 0x2ab2a8))()" identifier = (call_expression "(**(code **)(puVar40 + 0x2ab2a8))()" (parenthesized_expression "(**(code **)(puVar40 + 0x2ab2a8))" ( (pointer_expression "**(code **)(puVar40 + 0x2ab2a8)" * (pointer_expression "*(code **)(puVar40 + 0x2ab2a8)" * (cast_expression "(code **)(puVar40 + 0x2ab2a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar40 + 0x2ab2a8)" ( (binary_expression "puVar40 + 0x2ab2a8" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar9 != 0) {\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00188264:\n              uVar11 = uVar20 - 1;\n              bVar2 = uVar11 < uVar20;\n              uVar20 = uVar11 + iVar10 & -iVar10;\n              uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;\nLAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;\n              EVar25 = this_00->type_;\n              uVar11 = uVar20 - (int)this_00->vaddr_;\n              *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n              *(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);\n              goto joined_r0x001880f8;\n            }" { (labeled_statement "LAB_00188264:\n              uVar11 = uVar20 - 1;" statement_identifier : (expression_statement "uVar11 = uVar20 - 1;" (assignment_expression "uVar11 = uVar20 - 1" identifier = (binary_expression "uVar20 - 1" identifier - number_literal)) ;)) (expression_statement "bVar2 = uVar11 < uVar20;" (assignment_expression "bVar2 = uVar11 < uVar20" identifier = (binary_expression "uVar11 < uVar20" identifier < identifier)) ;) (expression_statement "uVar20 = uVar11 + iVar10 & -iVar10;" (assignment_expression "uVar20 = uVar11 + iVar10 & -iVar10" identifier = (binary_expression "uVar11 + iVar10 & -iVar10" (binary_expression "uVar11 + iVar10" identifier + identifier) & (unary_expression "-iVar10" - identifier))) ;) (expression_statement "uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29;" (assignment_expression "uVar13 = (uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29" identifier = (binary_expression "(uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29 &\n                       -(uint)(-iVar10 != 0) - iVar29" (binary_expression "(uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1) + iVar29" (binary_expression "(uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2 + (uVar13 - 1)" (binary_expression "(uint)(uVar11 + iVar10 < uVar11) + (uint)bVar2" (call_expression "(uint)(uVar11 + iVar10 < uVar11)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar11 + iVar10 < uVar11)" ( (binary_expression "uVar11 + iVar10 < uVar11" (binary_expression "uVar11 + iVar10" identifier + identifier) < identifier) ))) + (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) + (parenthesized_expression "(uVar13 - 1)" ( (binary_expression "uVar13 - 1" identifier - number_literal) ))) + identifier) & (binary_expression "-(uint)(-iVar10 != 0) - iVar29" (unary_expression "-(uint)(-iVar10 != 0)" - (call_expression "(uint)(-iVar10 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(-iVar10 != 0)" ( (binary_expression "-iVar10 != 0" (unary_expression "-iVar10" - identifier) != number_literal) )))) - identifier))) ;) (labeled_statement "LAB_001881ec:\n              iVar9 = *(int *)&this_00->vaddr_;" statement_identifier : (expression_statement "iVar9 = *(int *)&this_00->vaddr_;" (assignment_expression "iVar9 = *(int *)&this_00->vaddr_" identifier = (pointer_expression "*(int *)&this_00->vaddr_" * (cast_expression "(int *)&this_00->vaddr_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->vaddr_" & (field_expression "this_00->vaddr_" identifier -> field_identifier))))) ;)) (expression_statement "EVar25 = this_00->type_;" (assignment_expression "EVar25 = this_00->type_" identifier = (field_expression "this_00->type_" identifier -> field_identifier)) ;) (expression_statement "uVar11 = uVar20 - (int)this_00->vaddr_;" (assignment_expression "uVar11 = uVar20 - (int)this_00->vaddr_" identifier = (binary_expression "uVar20 - (int)this_00->vaddr_" identifier - (cast_expression "(int)this_00->vaddr_" ( (type_descriptor "int" primitive_type) ) (field_expression "this_00->vaddr_" identifier -> field_identifier)))) ;) (expression_statement "*(uint *)((int)&this_00->memsz_ + 4) = uVar11;" (assignment_expression "*(uint *)((int)&this_00->memsz_ + 4) = uVar11" (pointer_expression "*(uint *)((int)&this_00->memsz_ + 4)" * (cast_expression "(uint *)((int)&this_00->memsz_ + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->memsz_ + 4)" ( (binary_expression "(int)&this_00->memsz_ + 4" (cast_expression "(int)&this_00->memsz_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11);" (assignment_expression "*(uint *)&this_00->memsz_ = (uVar13 - iVar9) - (uint)(uVar20 < uVar11)" (pointer_expression "*(uint *)&this_00->memsz_" * (cast_expression "(uint *)&this_00->memsz_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier)))) = (binary_expression "(uVar13 - iVar9) - (uint)(uVar20 < uVar11)" (parenthesized_expression "(uVar13 - iVar9)" ( (binary_expression "uVar13 - iVar9" identifier - identifier) )) - (call_expression "(uint)(uVar20 < uVar11)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar20 < uVar11)" ( (binary_expression "uVar20 < uVar11" identifier < identifier) ))))) ;) (goto_statement "goto joined_r0x001880f8;" goto statement_identifier ;) })) }))) (expression_statement "uVar24 = uVar20 - 1;" (assignment_expression "uVar24 = uVar20 - 1" identifier = (binary_expression "uVar20 - 1" identifier - number_literal)) ;) (expression_statement "uVar11 = -(uint)(-iVar10 != 0) - iVar29;" (assignment_expression "uVar11 = -(uint)(-iVar10 != 0) - iVar29" identifier = (binary_expression "-(uint)(-iVar10 != 0) - iVar29" (unary_expression "-(uint)(-iVar10 != 0)" - (call_expression "(uint)(-iVar10 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(-iVar10 != 0)" ( (binary_expression "-iVar10 != 0" (unary_expression "-iVar10" - identifier) != number_literal) )))) - identifier)) ;) (if_statement "if (((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13) goto LAB_00188324;" if (parenthesized_expression "(((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13)" ( (binary_expression "((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11) != uVar13" (parenthesized_expression "((uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11)" ( (binary_expression "(uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29 &\n              uVar11" (binary_expression "(uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1) + iVar29" (binary_expression "(uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20) + (uVar13 - 1)" (binary_expression "(uint)(uVar24 + iVar10 < uVar24) + (uint)(uVar24 < uVar20)" (call_expression "(uint)(uVar24 + iVar10 < uVar24)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar24 + iVar10 < uVar24)" ( (binary_expression "uVar24 + iVar10 < uVar24" (binary_expression "uVar24 + iVar10" identifier + identifier) < identifier) ))) + (call_expression "(uint)(uVar24 < uVar20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar24 < uVar20)" ( (binary_expression "uVar24 < uVar20" identifier < identifier) )))) + (parenthesized_expression "(uVar13 - 1)" ( (binary_expression "uVar13 - 1" identifier - number_literal) ))) + identifier) & identifier) )) != identifier) )) (goto_statement "goto LAB_00188324;" goto statement_identifier ;)) (expression_statement "puVar21 = &DAT_000012a8;" (assignment_expression "puVar21 = &DAT_000012a8" identifier = (pointer_expression "&DAT_000012a8" & identifier)) ;) (if_statement "if ((uVar24 + iVar10 & -iVar10) != uVar20) goto LAB_001882ec;" if (parenthesized_expression "((uVar24 + iVar10 & -iVar10) != uVar20)" ( (binary_expression "(uVar24 + iVar10 & -iVar10) != uVar20" (parenthesized_expression "(uVar24 + iVar10 & -iVar10)" ( (binary_expression "uVar24 + iVar10 & -iVar10" (binary_expression "uVar24 + iVar10" identifier + identifier) & (unary_expression "-iVar10" - identifier)) )) != identifier) )) (goto_statement "goto LAB_001882ec;" goto statement_identifier ;)) (expression_statement "EVar25 = this_00->type_;" (assignment_expression "EVar25 = this_00->type_" identifier = (field_expression "this_00->type_" identifier -> field_identifier)) ;) })) (labeled_statement "joined_r0x001880f8:\n        if (EVar25 != 7) {\n          return CONCAT44(7,uVar11);\n        }" statement_identifier : (if_statement "if (EVar25 != 7) {\n          return CONCAT44(7,uVar11);\n        }" if (parenthesized_expression "(EVar25 != 7)" ( (binary_expression "EVar25 != 7" identifier != number_literal) )) (compound_statement "{\n          return CONCAT44(7,uVar11);\n        }" { (return_statement "return CONCAT44(7,uVar11);" return (call_expression "CONCAT44(7,uVar11)" identifier (argument_list "(7,uVar11)" ( number_literal , identifier ))) ;) }))) (expression_statement "uVar46 = maximum_alignment(this_00);" (assignment_expression "uVar46 = maximum_alignment(this_00)" identifier = (call_expression "maximum_alignment(this_00)" identifier (argument_list "(this_00)" ( identifier )))) ;) (if_statement "if (uVar46 == 0) {\n          uVar13 = *(uint *)&this_00->memsz_;\n          uVar11 = (uint)this_00->memsz_;\n          *(uint *)&this_00->memsz_ = uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n        }\n        else {\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }" if (parenthesized_expression "(uVar46 == 0)" ( (binary_expression "uVar46 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar13 = *(uint *)&this_00->memsz_;\n          uVar11 = (uint)this_00->memsz_;\n          *(uint *)&this_00->memsz_ = uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n        }" { (expression_statement "uVar13 = *(uint *)&this_00->memsz_;" (assignment_expression "uVar13 = *(uint *)&this_00->memsz_" identifier = (pointer_expression "*(uint *)&this_00->memsz_" * (cast_expression "(uint *)&this_00->memsz_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier))))) ;) (expression_statement "uVar11 = (uint)this_00->memsz_;" (assignment_expression "uVar11 = (uint)this_00->memsz_" identifier = (cast_expression "(uint)this_00->memsz_" ( (type_descriptor "uint" type_identifier) ) (field_expression "this_00->memsz_" identifier -> field_identifier))) ;) (expression_statement "*(uint *)&this_00->memsz_ = uVar13;" (assignment_expression "*(uint *)&this_00->memsz_ = uVar13" (pointer_expression "*(uint *)&this_00->memsz_" * (cast_expression "(uint *)&this_00->memsz_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier)))) = identifier) ;) (expression_statement "*(uint *)((int)&this_00->memsz_ + 4) = uVar11;" (assignment_expression "*(uint *)((int)&this_00->memsz_ + 4) = uVar11" (pointer_expression "*(uint *)((int)&this_00->memsz_ + 4)" * (cast_expression "(uint *)((int)&this_00->memsz_ + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->memsz_ + 4)" ( (binary_expression "(int)&this_00->memsz_ + 4" (cast_expression "(int)&this_00->memsz_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) }) (else_clause "else {\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }" else (compound_statement "{\n          uVar24 = (uint)this_00->vaddr_;\n          uVar11 = -(int)uVar46;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);\n          uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);\n          if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;\n          puVar21 = (undefined1 *)0x12b1;\n          if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;\n          uVar17 = (uint)this_00->memsz_;\n          uVar24 = uVar17 - 1;\n          lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);\n          uVar11 = (uint)lVar3 & uVar11;\n          uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;\n          *(uint *)((int)&this_00->memsz_ + 4) = uVar11;\n          *(uint *)&this_00->memsz_ = uVar13;\n        }" { (expression_statement "uVar24 = (uint)this_00->vaddr_;" (assignment_expression "uVar24 = (uint)this_00->vaddr_" identifier = (cast_expression "(uint)this_00->vaddr_" ( (type_descriptor "uint" type_identifier) ) (field_expression "this_00->vaddr_" identifier -> field_identifier))) ;) (expression_statement "uVar11 = -(int)uVar46;" (assignment_expression "uVar11 = -(int)uVar46" identifier = (unary_expression "-(int)uVar46" - (cast_expression "(int)uVar46" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1);" (assignment_expression "lVar3 = uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1)" identifier = (binary_expression "uVar46 + CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1)" identifier + (call_expression "CONCAT44((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1)" identifier (argument_list "((uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1),\n                                    uVar24 - 1)" ( (binary_expression "(uint)(uVar24 - 1 < uVar24) + (*(uint *)&this_00->vaddr_ - 1)" (call_expression "(uint)(uVar24 - 1 < uVar24)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar24 - 1 < uVar24)" ( (binary_expression "uVar24 - 1 < uVar24" (binary_expression "uVar24 - 1" identifier - number_literal) < identifier) ))) + (parenthesized_expression "(*(uint *)&this_00->vaddr_ - 1)" ( (binary_expression "*(uint *)&this_00->vaddr_ - 1" (pointer_expression "*(uint *)&this_00->vaddr_" * (cast_expression "(uint *)&this_00->vaddr_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->vaddr_" & (field_expression "this_00->vaddr_" identifier -> field_identifier)))) - number_literal) ))) , (binary_expression "uVar24 - 1" identifier - number_literal) ))))) ;) (expression_statement "uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20);" (assignment_expression "uVar13 = -(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20)" identifier = (binary_expression "-(uint)(uVar11 != 0) - (int)(uVar46 >> 0x20)" (unary_expression "-(uint)(uVar11 != 0)" - (call_expression "(uint)(uVar11 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar11 != 0)" ( (binary_expression "uVar11 != 0" identifier != number_literal) )))) - (cast_expression "(int)(uVar46 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uVar46 >> 0x20)" ( (binary_expression "uVar46 >> 0x20" identifier >> number_literal) ))))) ;) (if_statement "if (*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))\n          goto LAB_00188304;" if (parenthesized_expression "(*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13))" ( (binary_expression "*(uint *)&this_00->vaddr_ != ((uint)((ulonglong)lVar3 >> 0x20) & uVar13)" (pointer_expression "*(uint *)&this_00->vaddr_" * (cast_expression "(uint *)&this_00->vaddr_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->vaddr_" & (field_expression "this_00->vaddr_" identifier -> field_identifier)))) != (parenthesized_expression "((uint)((ulonglong)lVar3 >> 0x20) & uVar13)" ( (binary_expression "(uint)((ulonglong)lVar3 >> 0x20) & uVar13" (call_expression "(uint)((ulonglong)lVar3 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar3 >> 0x20)" ( (binary_expression "(ulonglong)lVar3 >> 0x20" (cast_expression "(ulonglong)lVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) & identifier) ))) )) (goto_statement "goto LAB_00188304;" goto statement_identifier ;)) (expression_statement "puVar21 = (undefined1 *)0x12b1;" (assignment_expression "puVar21 = (undefined1 *)0x12b1" identifier = (cast_expression "(undefined1 *)0x12b1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (uVar24 != ((uint)lVar3 & uVar11)) goto LAB_001882ec;" if (parenthesized_expression "(uVar24 != ((uint)lVar3 & uVar11))" ( (binary_expression "uVar24 != ((uint)lVar3 & uVar11)" identifier != (parenthesized_expression "((uint)lVar3 & uVar11)" ( (binary_expression "(uint)lVar3 & uVar11" (cast_expression "(uint)lVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & identifier) ))) )) (goto_statement "goto LAB_001882ec;" goto statement_identifier ;)) (expression_statement "uVar17 = (uint)this_00->memsz_;" (assignment_expression "uVar17 = (uint)this_00->memsz_" identifier = (cast_expression "(uint)this_00->memsz_" ( (type_descriptor "uint" type_identifier) ) (field_expression "this_00->memsz_" identifier -> field_identifier))) ;) (expression_statement "uVar24 = uVar17 - 1;" (assignment_expression "uVar24 = uVar17 - 1" identifier = (binary_expression "uVar17 - 1" identifier - number_literal)) ;) (expression_statement "lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24);" (assignment_expression "lVar3 = uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24)" identifier = (binary_expression "uVar46 + CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24)" identifier + (call_expression "CONCAT44((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24)" identifier (argument_list "((uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1,uVar24)" ( (binary_expression "(uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_ + -1" (binary_expression "(uint)(uVar24 < uVar17) + *(int *)&this_00->memsz_" (call_expression "(uint)(uVar24 < uVar17)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar24 < uVar17)" ( (binary_expression "uVar24 < uVar17" identifier < identifier) ))) + (pointer_expression "*(int *)&this_00->memsz_" * (cast_expression "(int *)&this_00->memsz_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier))))) + number_literal) , identifier ))))) ;) (expression_statement "uVar11 = (uint)lVar3 & uVar11;" (assignment_expression "uVar11 = (uint)lVar3 & uVar11" identifier = (binary_expression "(uint)lVar3 & uVar11" (cast_expression "(uint)lVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & identifier)) ;) (expression_statement "uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13;" (assignment_expression "uVar13 = (uint)((ulonglong)lVar3 >> 0x20) & uVar13" identifier = (binary_expression "(uint)((ulonglong)lVar3 >> 0x20) & uVar13" (call_expression "(uint)((ulonglong)lVar3 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar3 >> 0x20)" ( (binary_expression "(ulonglong)lVar3 >> 0x20" (cast_expression "(ulonglong)lVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) & identifier)) ;) (expression_statement "*(uint *)((int)&this_00->memsz_ + 4) = uVar11;" (assignment_expression "*(uint *)((int)&this_00->memsz_ + 4) = uVar11" (pointer_expression "*(uint *)((int)&this_00->memsz_ + 4)" * (cast_expression "(uint *)((int)&this_00->memsz_ + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->memsz_ + 4)" ( (binary_expression "(int)&this_00->memsz_ + 4" (cast_expression "(int)&this_00->memsz_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)&this_00->memsz_ = uVar13;" (assignment_expression "*(uint *)&this_00->memsz_ = uVar13" (pointer_expression "*(uint *)&this_00->memsz_" * (cast_expression "(uint *)&this_00->memsz_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->memsz_" & (field_expression "this_00->memsz_" identifier -> field_identifier)))) = identifier) ;) }))) (return_statement "return CONCAT44(uVar11,uVar13);" return (call_expression "CONCAT44(uVar11,uVar13)" identifier (argument_list "(uVar11,uVar13)" ( identifier , identifier ))) ;) })) }) (else_clause "else {\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)(iStack_c4 + 0x20)) goto LAB_001882b4;\n      iVar9 = *(int *)(iStack_c4 + 8);\n      uVar13 = *(uint *)(iStack_c4 + 0xc);\n      if (*(int *)(iStack_c4 + 0x20) << 1 < 0) {\n        iVar10 = *(int *)(iStack_c4 + 0x10);\n        uVar17 = (uint)this_00->vaddr_;\n        uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);\n        iVar12 = *(int *)&this_00->vaddr_;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;\n        *(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17);\n        iVar10 = iStack_c4;\n        if (iStack_c8 != 0) goto LAB_00187e40;\n        goto LAB_00187e60;\n      }\n    }" else (compound_statement "{\n      iVar9 = *(int *)(puVar40 + 0x2aa7ac);\n      if (-1 < *(int *)(iStack_c4 + 0x20)) goto LAB_001882b4;\n      iVar9 = *(int *)(iStack_c4 + 8);\n      uVar13 = *(uint *)(iStack_c4 + 0xc);\n      if (*(int *)(iStack_c4 + 0x20) << 1 < 0) {\n        iVar10 = *(int *)(iStack_c4 + 0x10);\n        uVar17 = (uint)this_00->vaddr_;\n        uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);\n        iVar12 = *(int *)&this_00->vaddr_;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;\n        *(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17);\n        iVar10 = iStack_c4;\n        if (iStack_c8 != 0) goto LAB_00187e40;\n        goto LAB_00187e60;\n      }\n    }" { (expression_statement "iVar9 = *(int *)(puVar40 + 0x2aa7ac);" (assignment_expression "iVar9 = *(int *)(puVar40 + 0x2aa7ac)" identifier = (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) ))))) ;) (if_statement "if (-1 < *(int *)(iStack_c4 + 0x20)) goto LAB_001882b4;" if (parenthesized_expression "(-1 < *(int *)(iStack_c4 + 0x20))" ( (binary_expression "-1 < *(int *)(iStack_c4 + 0x20)" number_literal < (pointer_expression "*(int *)(iStack_c4 + 0x20)" * (cast_expression "(int *)(iStack_c4 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_c4 + 0x20)" ( (binary_expression "iStack_c4 + 0x20" identifier + number_literal) ))))) )) (goto_statement "goto LAB_001882b4;" goto statement_identifier ;)) (expression_statement "iVar9 = *(int *)(iStack_c4 + 8);" (assignment_expression "iVar9 = *(int *)(iStack_c4 + 8)" identifier = (pointer_expression "*(int *)(iStack_c4 + 8)" * (cast_expression "(int *)(iStack_c4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_c4 + 8)" ( (binary_expression "iStack_c4 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar13 = *(uint *)(iStack_c4 + 0xc);" (assignment_expression "uVar13 = *(uint *)(iStack_c4 + 0xc)" identifier = (pointer_expression "*(uint *)(iStack_c4 + 0xc)" * (cast_expression "(uint *)(iStack_c4 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_c4 + 0xc)" ( (binary_expression "iStack_c4 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(iStack_c4 + 0x20) << 1 < 0) {\n        iVar10 = *(int *)(iStack_c4 + 0x10);\n        uVar17 = (uint)this_00->vaddr_;\n        uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);\n        iVar12 = *(int *)&this_00->vaddr_;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;\n        *(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17);\n        iVar10 = iStack_c4;\n        if (iStack_c8 != 0) goto LAB_00187e40;\n        goto LAB_00187e60;\n      }" if (parenthesized_expression "(*(int *)(iStack_c4 + 0x20) << 1 < 0)" ( (binary_expression "*(int *)(iStack_c4 + 0x20) << 1 < 0" (binary_expression "*(int *)(iStack_c4 + 0x20) << 1" (pointer_expression "*(int *)(iStack_c4 + 0x20)" * (cast_expression "(int *)(iStack_c4 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_c4 + 0x20)" ( (binary_expression "iStack_c4 + 0x20" identifier + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n        iVar10 = *(int *)(iStack_c4 + 0x10);\n        uVar17 = (uint)this_00->vaddr_;\n        uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);\n        iVar12 = *(int *)&this_00->vaddr_;\n        *(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;\n        *(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17);\n        iVar10 = iStack_c4;\n        if (iStack_c8 != 0) goto LAB_00187e40;\n        goto LAB_00187e60;\n      }" { (expression_statement "iVar10 = *(int *)(iStack_c4 + 0x10);" (assignment_expression "iVar10 = *(int *)(iStack_c4 + 0x10)" identifier = (pointer_expression "*(int *)(iStack_c4 + 0x10)" * (cast_expression "(int *)(iStack_c4 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_c4 + 0x10)" ( (binary_expression "iStack_c4 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "uVar17 = (uint)this_00->vaddr_;" (assignment_expression "uVar17 = (uint)this_00->vaddr_" identifier = (cast_expression "(uint)this_00->vaddr_" ( (type_descriptor "uint" type_identifier) ) (field_expression "this_00->vaddr_" identifier -> field_identifier))) ;) (expression_statement "uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14);" (assignment_expression "uVar24 = uVar13 + *(int *)(iStack_c4 + 0x14)" identifier = (binary_expression "uVar13 + *(int *)(iStack_c4 + 0x14)" identifier + (pointer_expression "*(int *)(iStack_c4 + 0x14)" * (cast_expression "(int *)(iStack_c4 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_c4 + 0x14)" ( (binary_expression "iStack_c4 + 0x14" identifier + number_literal) )))))) ;) (expression_statement "iVar12 = *(int *)&this_00->vaddr_;" (assignment_expression "iVar12 = *(int *)&this_00->vaddr_" identifier = (pointer_expression "*(int *)&this_00->vaddr_" * (cast_expression "(int *)&this_00->vaddr_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->vaddr_" & (field_expression "this_00->vaddr_" identifier -> field_identifier))))) ;) (expression_statement "*(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17;" (assignment_expression "*(uint *)((int)&this_00->filesz_ + 4) = uVar24 - uVar17" (pointer_expression "*(uint *)((int)&this_00->filesz_ + 4)" * (cast_expression "(uint *)((int)&this_00->filesz_ + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00->filesz_ + 4)" ( (binary_expression "(int)&this_00->filesz_ + 4" (cast_expression "(int)&this_00->filesz_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00->filesz_" & (field_expression "this_00->filesz_" identifier -> field_identifier))) + number_literal) )))) = (binary_expression "uVar24 - uVar17" identifier - identifier)) ;) (expression_statement "*(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17);" (assignment_expression "*(uint *)&this_00->filesz_ =\n             (((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17)" (pointer_expression "*(uint *)&this_00->filesz_" * (cast_expression "(uint *)&this_00->filesz_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->filesz_" & (field_expression "this_00->filesz_" identifier -> field_identifier)))) = (binary_expression "(((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12) -\n             (uint)(uVar24 < uVar24 - uVar17)" (parenthesized_expression "(((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12)" ( (binary_expression "((uint)(uVar24 < uVar13) + iVar9 + iVar10) - iVar12" (parenthesized_expression "((uint)(uVar24 < uVar13) + iVar9 + iVar10)" ( (binary_expression "(uint)(uVar24 < uVar13) + iVar9 + iVar10" (binary_expression "(uint)(uVar24 < uVar13) + iVar9" (call_expression "(uint)(uVar24 < uVar13)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar24 < uVar13)" ( (binary_expression "uVar24 < uVar13" identifier < identifier) ))) + identifier) + identifier) )) - identifier) )) - (call_expression "(uint)(uVar24 < uVar24 - uVar17)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar24 < uVar24 - uVar17)" ( (binary_expression "uVar24 < uVar24 - uVar17" identifier < (binary_expression "uVar24 - uVar17" identifier - identifier)) ))))) ;) (expression_statement "iVar10 = iStack_c4;" (assignment_expression "iVar10 = iStack_c4" identifier = identifier) ;) (if_statement "if (iStack_c8 != 0) goto LAB_00187e40;" if (parenthesized_expression "(iStack_c8 != 0)" ( (binary_expression "iStack_c8 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00187e40;" goto statement_identifier ;)) (goto_statement "goto LAB_00187e60;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_001882cc:\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xcf,*(int *)(puVar40 + 0x2aa7ac) + 0x7894);" statement_identifier : (expression_statement "(**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xcf,*(int *)(puVar40 + 0x2aa7ac) + 0x7894);" (call_expression "(**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xcf,*(int *)(puVar40 + 0x2aa7ac) + 0x7894)" (parenthesized_expression "(**(code **)(puVar40 + 0x2aa7bc))" ( (pointer_expression "**(code **)(puVar40 + 0x2aa7bc)" * (pointer_expression "*(code **)(puVar40 + 0x2aa7bc)" * (cast_expression "(code **)(puVar40 + 0x2aa7bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar40 + 0x2aa7bc)" ( (binary_expression "puVar40 + 0x2aa7bc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,0xcf,*(int *)(puVar40 + 0x2aa7ac) + 0x7894)" ( (binary_expression "*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0" (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar40 + 0x2aa7ac) + 0x7894" (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_001882e8:\n    puVar21 = (undefined1 *)0x1257;" statement_identifier : (expression_statement "puVar21 = (undefined1 *)0x1257;" (assignment_expression "puVar21 = (undefined1 *)0x1257" identifier = (cast_expression "(undefined1 *)0x1257" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) }) (else_clause "else {\n    pp_Var23 = pOVar35->_vptr_Output_data;\n    if (pp_Var23[5] != *(_func_int_varargs **)(puVar40 + 0x2ac750)) {\n      iVar9 = (*pp_Var23[5])(pOVar35);\n      goto LAB_00187da8;\n    }\n    if (*(int *)&pOVar35[3].field_0x20 << 7 < 0) {\n      pp_Var23 = *(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4);\n      iVar9 = *(int *)&pOVar35[1].data_size_;\n      goto LAB_00187da8;\n    }\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,&DAT_0000107b,\n               *(int *)(puVar40 + 0x2aa7ac) + 0x6fe4);\nLAB_00188324:\n    puVar21 = &DAT_000012a8;\n  }" else (compound_statement "{\n    pp_Var23 = pOVar35->_vptr_Output_data;\n    if (pp_Var23[5] != *(_func_int_varargs **)(puVar40 + 0x2ac750)) {\n      iVar9 = (*pp_Var23[5])(pOVar35);\n      goto LAB_00187da8;\n    }\n    if (*(int *)&pOVar35[3].field_0x20 << 7 < 0) {\n      pp_Var23 = *(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4);\n      iVar9 = *(int *)&pOVar35[1].data_size_;\n      goto LAB_00187da8;\n    }\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,&DAT_0000107b,\n               *(int *)(puVar40 + 0x2aa7ac) + 0x6fe4);\nLAB_00188324:\n    puVar21 = &DAT_000012a8;\n  }" { (expression_statement "pp_Var23 = pOVar35->_vptr_Output_data;" (assignment_expression "pp_Var23 = pOVar35->_vptr_Output_data" identifier = (field_expression "pOVar35->_vptr_Output_data" identifier -> field_identifier)) ;) (if_statement "if (pp_Var23[5] != *(_func_int_varargs **)(puVar40 + 0x2ac750)) {\n      iVar9 = (*pp_Var23[5])(pOVar35);\n      goto LAB_00187da8;\n    }" if (parenthesized_expression "(pp_Var23[5] != *(_func_int_varargs **)(puVar40 + 0x2ac750))" ( (binary_expression "pp_Var23[5] != *(_func_int_varargs **)(puVar40 + 0x2ac750)" (subscript_expression "pp_Var23[5]" identifier [ number_literal ]) != (pointer_expression "*(_func_int_varargs **)(puVar40 + 0x2ac750)" * (cast_expression "(_func_int_varargs **)(puVar40 + 0x2ac750)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar40 + 0x2ac750)" ( (binary_expression "puVar40 + 0x2ac750" identifier + number_literal) ))))) )) (compound_statement "{\n      iVar9 = (*pp_Var23[5])(pOVar35);\n      goto LAB_00187da8;\n    }" { (expression_statement "iVar9 = (*pp_Var23[5])(pOVar35);" (assignment_expression "iVar9 = (*pp_Var23[5])(pOVar35)" identifier = (call_expression "(*pp_Var23[5])(pOVar35)" (parenthesized_expression "(*pp_Var23[5])" ( (pointer_expression "*pp_Var23[5]" * (subscript_expression "pp_Var23[5]" identifier [ number_literal ])) )) (argument_list "(pOVar35)" ( identifier )))) ;) (goto_statement "goto LAB_00187da8;" goto statement_identifier ;) })) (if_statement "if (*(int *)&pOVar35[3].field_0x20 << 7 < 0) {\n      pp_Var23 = *(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4);\n      iVar9 = *(int *)&pOVar35[1].data_size_;\n      goto LAB_00187da8;\n    }" if (parenthesized_expression "(*(int *)&pOVar35[3].field_0x20 << 7 < 0)" ( (binary_expression "*(int *)&pOVar35[3].field_0x20 << 7 < 0" (binary_expression "*(int *)&pOVar35[3].field_0x20 << 7" (pointer_expression "*(int *)&pOVar35[3].field_0x20" * (cast_expression "(int *)&pOVar35[3].field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar35[3].field_0x20" & (field_expression "pOVar35[3].field_0x20" (subscript_expression "pOVar35[3]" identifier [ number_literal ]) . field_identifier)))) << number_literal) < number_literal) )) (compound_statement "{\n      pp_Var23 = *(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4);\n      iVar9 = *(int *)&pOVar35[1].data_size_;\n      goto LAB_00187da8;\n    }" { (expression_statement "pp_Var23 = *(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4);" (assignment_expression "pp_Var23 = *(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4)" identifier = (pointer_expression "*(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4)" * (cast_expression "(_func_int_varargs ***)((int)&pOVar35[1].data_size_ + 4)" ( (type_descriptor "_func_int_varargs ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "((int)&pOVar35[1].data_size_ + 4)" ( (binary_expression "(int)&pOVar35[1].data_size_ + 4" (cast_expression "(int)&pOVar35[1].data_size_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar35[1].data_size_" & (field_expression "pOVar35[1].data_size_" (subscript_expression "pOVar35[1]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))))) ;) (expression_statement "iVar9 = *(int *)&pOVar35[1].data_size_;" (assignment_expression "iVar9 = *(int *)&pOVar35[1].data_size_" identifier = (pointer_expression "*(int *)&pOVar35[1].data_size_" * (cast_expression "(int *)&pOVar35[1].data_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar35[1].data_size_" & (field_expression "pOVar35[1].data_size_" (subscript_expression "pOVar35[1]" identifier [ number_literal ]) . field_identifier))))) ;) (goto_statement "goto LAB_00187da8;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,&DAT_0000107b,\n               *(int *)(puVar40 + 0x2aa7ac) + 0x6fe4);" (call_expression "(**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,&DAT_0000107b,\n               *(int *)(puVar40 + 0x2aa7ac) + 0x6fe4)" (parenthesized_expression "(**(code **)(puVar40 + 0x2aa7bc))" ( (pointer_expression "**(code **)(puVar40 + 0x2aa7bc)" * (pointer_expression "*(code **)(puVar40 + 0x2aa7bc)" * (cast_expression "(code **)(puVar40 + 0x2aa7bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar40 + 0x2aa7bc)" ( (binary_expression "puVar40 + 0x2aa7bc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0,&DAT_0000107b,\n               *(int *)(puVar40 + 0x2aa7ac) + 0x6fe4)" ( (binary_expression "*(int *)(puVar40 + 0x2aa7ac) + -0x4fe0" (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) )))) + number_literal) , (pointer_expression "&DAT_0000107b" & identifier) , (binary_expression "*(int *)(puVar40 + 0x2aa7ac) + 0x6fe4" (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_00188324:\n    puVar21 = &DAT_000012a8;" statement_identifier : (expression_statement "puVar21 = &DAT_000012a8;" (assignment_expression "puVar21 = &DAT_000012a8" identifier = (pointer_expression "&DAT_000012a8" & identifier)) ;)) }))) (labeled_statement "LAB_001882ec:\n  do {\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + 0x59f0,puVar21,*(int *)(puVar40 + 0x2aa7ac) + 0x6ff4);\nLAB_00188304:\n    puVar21 = (undefined1 *)0x12b1;\n  } while( true );" statement_identifier : (do_statement "do {\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + 0x59f0,puVar21,*(int *)(puVar40 + 0x2aa7ac) + 0x6ff4);\nLAB_00188304:\n    puVar21 = (undefined1 *)0x12b1;\n  } while( true );" do (compound_statement "{\n    (**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + 0x59f0,puVar21,*(int *)(puVar40 + 0x2aa7ac) + 0x6ff4);\nLAB_00188304:\n    puVar21 = (undefined1 *)0x12b1;\n  }" { (expression_statement "(**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + 0x59f0,puVar21,*(int *)(puVar40 + 0x2aa7ac) + 0x6ff4);" (call_expression "(**(code **)(puVar40 + 0x2aa7bc))\n              (*(int *)(puVar40 + 0x2aa7ac) + 0x59f0,puVar21,*(int *)(puVar40 + 0x2aa7ac) + 0x6ff4)" (parenthesized_expression "(**(code **)(puVar40 + 0x2aa7bc))" ( (pointer_expression "**(code **)(puVar40 + 0x2aa7bc)" * (pointer_expression "*(code **)(puVar40 + 0x2aa7bc)" * (cast_expression "(code **)(puVar40 + 0x2aa7bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar40 + 0x2aa7bc)" ( (binary_expression "puVar40 + 0x2aa7bc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar40 + 0x2aa7ac) + 0x59f0,puVar21,*(int *)(puVar40 + 0x2aa7ac) + 0x6ff4)" ( (binary_expression "*(int *)(puVar40 + 0x2aa7ac) + 0x59f0" (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) )))) + number_literal) , identifier , (binary_expression "*(int *)(puVar40 + 0x2aa7ac) + 0x6ff4" (pointer_expression "*(int *)(puVar40 + 0x2aa7ac)" * (cast_expression "(int *)(puVar40 + 0x2aa7ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar40 + 0x2aa7ac)" ( (binary_expression "puVar40 + 0x2aa7ac" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_00188304:\n    puVar21 = (undefined1 *)0x12b1;" statement_identifier : (expression_statement "puVar21 = (undefined1 *)0x12b1;" (assignment_expression "puVar21 = (undefined1 *)0x12b1" identifier = (cast_expression "(undefined1 *)0x12b1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) }) while (parenthesized_expression "( true )" ( true )) ;)) })))
(translation_unit "ulonglong gold::Output_segment::set_section_list_addresses\n                    (Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,\n                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)\n\n{\n  byte bVar1;\n  bool bVar2;\n  longlong lVar3;\n  undefined *puVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined4 uVar11;\n  uint uVar12;\n  undefined4 *puVar13;\n  undefined4 extraout_v1;\n  uint uVar14;\n  int *piVar15;\n  undefined *puVar16;\n  undefined3 in_register_00000014;\n  int iVar17;\n  uint uVar18;\n  uint uVar19;\n  undefined4 uVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  uint uVar24;\n  uint uVar25;\n  uint uVar26;\n  uint uVar27;\n  undefined4 uVar28;\n  int *piVar29;\n  int iVar30;\n  uint uVar31;\n  ulonglong uVar32;\n  ulonglong uVar33;\n  undefined8 uVar34;\n  char *in_stack_00000024;\n  uint local_78;\n  uint local_54;\n  \n  puVar4 = PTR_s_alize_xindex_004323b4;\n  iVar17 = CONCAT31(in_register_00000014,param_2);\n  uVar14 = (uint)*param_6;\n  piVar23 = *(int **)param_5;\n  uVar12 = *(uint *)param_6;\n  uVar27 = *param_7;\n  uVar24 = param_7[1];\n  local_78 = uVar12;\n  local_54 = uVar14;\n  if (piVar23 != *(int **)((int)param_5 + 4)) {\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }\n  *(uint *)param_6 = local_78;\n  *(uint *)((int)param_6 + 4) = local_54;\n  *param_7 = uVar27;\n  param_7[1] = uVar24;\n  return param_4;\n}\n\n" (function_definition "ulonglong gold::Output_segment::set_section_list_addresses\n                    (Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,\n                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)\n\n{\n  byte bVar1;\n  bool bVar2;\n  longlong lVar3;\n  undefined *puVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined4 uVar11;\n  uint uVar12;\n  undefined4 *puVar13;\n  undefined4 extraout_v1;\n  uint uVar14;\n  int *piVar15;\n  undefined *puVar16;\n  undefined3 in_register_00000014;\n  int iVar17;\n  uint uVar18;\n  uint uVar19;\n  undefined4 uVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  uint uVar24;\n  uint uVar25;\n  uint uVar26;\n  uint uVar27;\n  undefined4 uVar28;\n  int *piVar29;\n  int iVar30;\n  uint uVar31;\n  ulonglong uVar32;\n  ulonglong uVar33;\n  undefined8 uVar34;\n  char *in_stack_00000024;\n  uint local_78;\n  uint local_54;\n  \n  puVar4 = PTR_s_alize_xindex_004323b4;\n  iVar17 = CONCAT31(in_register_00000014,param_2);\n  uVar14 = (uint)*param_6;\n  piVar23 = *(int **)param_5;\n  uVar12 = *(uint *)param_6;\n  uVar27 = *param_7;\n  uVar24 = param_7[1];\n  local_78 = uVar12;\n  local_54 = uVar14;\n  if (piVar23 != *(int **)((int)param_5 + 4)) {\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }\n  *(uint *)param_6 = local_78;\n  *(uint *)((int)param_6 + 4) = local_54;\n  *param_7 = uVar27;\n  param_7[1] = uVar24;\n  return param_4;\n}" type_identifier (ERROR "gold::Output_segment::" identifier : : identifier : :) (function_declarator "set_section_list_addresses\n                    (Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,\n                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)" identifier (parameter_list "(Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,\n                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)" ( (parameter_declaration "Layout *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "bool param_2" primitive_type identifier) , (parameter_declaration "vector *param_3" type_identifier (pointer_declarator "*param_3" * identifier)) , (parameter_declaration "ulonglong param_4" type_identifier identifier) , (parameter_declaration "longlong *param_5" type_identifier (pointer_declarator "*param_5" * identifier)) , (parameter_declaration "longlong *param_6" type_identifier (pointer_declarator "*param_6" * identifier)) , (parameter_declaration "uint *param_7" type_identifier (pointer_declarator "*param_7" * identifier)) , (parameter_declaration "bool *param_8" primitive_type (pointer_declarator "*param_8" * identifier)) ))) (compound_statement "{\n  byte bVar1;\n  bool bVar2;\n  longlong lVar3;\n  undefined *puVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined4 uVar11;\n  uint uVar12;\n  undefined4 *puVar13;\n  undefined4 extraout_v1;\n  uint uVar14;\n  int *piVar15;\n  undefined *puVar16;\n  undefined3 in_register_00000014;\n  int iVar17;\n  uint uVar18;\n  uint uVar19;\n  undefined4 uVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  uint uVar24;\n  uint uVar25;\n  uint uVar26;\n  uint uVar27;\n  undefined4 uVar28;\n  int *piVar29;\n  int iVar30;\n  uint uVar31;\n  ulonglong uVar32;\n  ulonglong uVar33;\n  undefined8 uVar34;\n  char *in_stack_00000024;\n  uint local_78;\n  uint local_54;\n  \n  puVar4 = PTR_s_alize_xindex_004323b4;\n  iVar17 = CONCAT31(in_register_00000014,param_2);\n  uVar14 = (uint)*param_6;\n  piVar23 = *(int **)param_5;\n  uVar12 = *(uint *)param_6;\n  uVar27 = *param_7;\n  uVar24 = param_7[1];\n  local_78 = uVar12;\n  local_54 = uVar14;\n  if (piVar23 != *(int **)((int)param_5 + 4)) {\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }\n  *(uint *)param_6 = local_78;\n  *(uint *)((int)param_6 + 4) = local_54;\n  *param_7 = uVar27;\n  param_7[1] = uVar24;\n  return param_4;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "bool bVar2;" primitive_type identifier ;) (declaration "longlong lVar3;" type_identifier identifier ;) (declaration "undefined *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "undefined *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "undefined4 *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "undefined4 extraout_v1;" type_identifier identifier ;) (declaration "uint uVar14;" type_identifier identifier ;) (declaration "int *piVar15;" primitive_type (pointer_declarator "*piVar15" * identifier) ;) (declaration "undefined *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "undefined3 in_register_00000014;" type_identifier identifier ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "undefined4 uVar20;" type_identifier identifier ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "int *piVar23;" primitive_type (pointer_declarator "*piVar23" * identifier) ;) (declaration "uint uVar24;" type_identifier identifier ;) (declaration "uint uVar25;" type_identifier identifier ;) (declaration "uint uVar26;" type_identifier identifier ;) (declaration "uint uVar27;" type_identifier identifier ;) (declaration "undefined4 uVar28;" type_identifier identifier ;) (declaration "int *piVar29;" primitive_type (pointer_declarator "*piVar29" * identifier) ;) (declaration "int iVar30;" primitive_type identifier ;) (declaration "uint uVar31;" type_identifier identifier ;) (declaration "ulonglong uVar32;" type_identifier identifier ;) (declaration "ulonglong uVar33;" type_identifier identifier ;) (declaration "undefined8 uVar34;" type_identifier identifier ;) (declaration "char *in_stack_00000024;" primitive_type (pointer_declarator "*in_stack_00000024" * identifier) ;) (declaration "uint local_78;" type_identifier identifier ;) (declaration "uint local_54;" type_identifier identifier ;) (expression_statement "puVar4 = PTR_s_alize_xindex_004323b4;" (assignment_expression "puVar4 = PTR_s_alize_xindex_004323b4" identifier = identifier) ;) (expression_statement "iVar17 = CONCAT31(in_register_00000014,param_2);" (assignment_expression "iVar17 = CONCAT31(in_register_00000014,param_2)" identifier = (call_expression "CONCAT31(in_register_00000014,param_2)" identifier (argument_list "(in_register_00000014,param_2)" ( identifier , identifier )))) ;) (expression_statement "uVar14 = (uint)*param_6;" (assignment_expression "uVar14 = (uint)*param_6" identifier = (binary_expression "(uint)*param_6" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "piVar23 = *(int **)param_5;" (assignment_expression "piVar23 = *(int **)param_5" identifier = (pointer_expression "*(int **)param_5" * (cast_expression "(int **)param_5" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "uVar12 = *(uint *)param_6;" (assignment_expression "uVar12 = *(uint *)param_6" identifier = (pointer_expression "*(uint *)param_6" * (cast_expression "(uint *)param_6" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar27 = *param_7;" (assignment_expression "uVar27 = *param_7" identifier = (pointer_expression "*param_7" * identifier)) ;) (expression_statement "uVar24 = param_7[1];" (assignment_expression "uVar24 = param_7[1]" identifier = (subscript_expression "param_7[1]" identifier [ number_literal ])) ;) (expression_statement "local_78 = uVar12;" (assignment_expression "local_78 = uVar12" identifier = identifier) ;) (expression_statement "local_54 = uVar14;" (assignment_expression "local_54 = uVar14" identifier = identifier) ;) (if_statement "if (piVar23 != *(int **)((int)param_5 + 4)) {\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }" if (parenthesized_expression "(piVar23 != *(int **)((int)param_5 + 4))" ( (binary_expression "piVar23 != *(int **)((int)param_5 + 4)" identifier != (pointer_expression "*(int **)((int)param_5 + 4)" * (cast_expression "(int **)((int)param_5 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)param_5 + 4)" ( (binary_expression "(int)param_5 + 4" (cast_expression "(int)param_5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (compound_statement "{\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }" { (expression_statement "puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;" (assignment_expression "puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + 0x5ae4" identifier + number_literal)) ;) (expression_statement "puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;" (assignment_expression "puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + 0x5a48" identifier + number_literal)) ;) (expression_statement "puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;" (assignment_expression "puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + -0x29ec" identifier + number_literal)) ;) (expression_statement "uVar21 = uVar12;" (assignment_expression "uVar21 = uVar12" identifier = identifier) ;) (expression_statement "uVar22 = uVar14;" (assignment_expression "uVar22 = uVar14" identifier = identifier) ;) (do_statement "do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);" do (compound_statement "{\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    }" { (expression_statement "iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);" (assignment_expression "iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8)" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x1c))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0x1c)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0x1c)" * (cast_expression "(code **)(*(int *)*piVar23 + 0x1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0x1c)" ( (binary_expression "*(int *)*piVar23 + 0x1c" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "((int *)*piVar23,8)" ( (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier)) , number_literal )))) ;) (expression_statement "iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();" (assignment_expression "iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))()" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0x20))()" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x20))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0x20)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0x20)" * (cast_expression "(code **)(*(int *)*piVar23 + 0x20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0x20)" ( (binary_expression "*(int *)*piVar23 + 0x20" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }" if (parenthesized_expression "(param_3 != (vector *)0x0)" ( (binary_expression "param_3 != (vector *)0x0" identifier != (cast_expression "(vector *)0x0" ( (type_descriptor "vector *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }" { (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (expression_statement "bVar1 = *(byte *)(piVar15 + 8);" (assignment_expression "bVar1 = *(byte *)(piVar15 + 8)" identifier = (pointer_expression "*(byte *)(piVar15 + 8)" * (cast_expression "(byte *)(piVar15 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar15 + 8)" ( (binary_expression "piVar15 + 8" identifier + number_literal) ))))) ;) (expression_statement "*(byte *)(piVar15 + 8) = bVar1 & 0x5f;" (assignment_expression "*(byte *)(piVar15 + 8) = bVar1 & 0x5f" (pointer_expression "*(byte *)(piVar15 + 8)" * (cast_expression "(byte *)(piVar15 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar15 + 8)" ( (binary_expression "piVar15 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x5f" identifier & number_literal)) ;) (if_statement "if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }" if (parenthesized_expression "(-1 < piVar15[8] << 3)" ( (binary_expression "-1 < piVar15[8] << 3" number_literal < (binary_expression "piVar15[8] << 3" (subscript_expression "piVar15[8]" identifier [ number_literal ]) << number_literal)) )) (compound_statement "{\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }" { (expression_statement "*(byte *)(piVar15 + 8) = bVar1 & 0x1f;" (assignment_expression "*(byte *)(piVar15 + 8) = bVar1 & 0x1f" (pointer_expression "*(byte *)(piVar15 + 8)" * (cast_expression "(byte *)(piVar15 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar15 + 8)" ( (binary_expression "piVar15 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x1f" identifier & number_literal)) ;) })) (expression_statement "(**(code **)(*piVar15 + 0x3c))();" (call_expression "(**(code **)(*piVar15 + 0x3c))()" (parenthesized_expression "(**(code **)(*piVar15 + 0x3c))" ( (pointer_expression "**(code **)(*piVar15 + 0x3c)" * (pointer_expression "*(code **)(*piVar15 + 0x3c)" * (cast_expression "(code **)(*piVar15 + 0x3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar15 + 0x3c)" ( (binary_expression "*piVar15 + 0x3c" (pointer_expression "*piVar15" * identifier) + number_literal) ))))) )) (argument_list "()" ( ))) ;) })) (expression_statement "piVar15 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar15 = (int *)PTR_parameters_00432be0" identifier = (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar25 = uVar27;" (assignment_expression "uVar25 = uVar27" identifier = identifier) ;) (if_statement "if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }" if (parenthesized_expression "(((int *)*piVar23)[8] < 0)" ( (binary_expression "((int *)*piVar23)[8] < 0" (subscript_expression "((int *)*piVar23)[8]" (parenthesized_expression "((int *)*piVar23)" ( (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier)) )) [ number_literal ]) < number_literal) )) (compound_statement "{\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }" { (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" ( (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" * (cast_expression "(undefined4 *)PTR_parameters_00432be0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )))) ;) (if_statement "if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }" { (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }" if (parenthesized_expression "(-1 < piVar29[8])" ( (binary_expression "-1 < piVar29[8]" number_literal < (subscript_expression "piVar29[8]" identifier [ number_literal ])) )) (compound_statement "{\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }" { (labeled_statement "LAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850)" (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,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7850" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "uVar26 = piVar29[2];" (assignment_expression "uVar26 = piVar29[2]" identifier = (subscript_expression "piVar29[2]" identifier [ number_literal ])) ;) (expression_statement "lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);" (assignment_expression "lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" identifier = (binary_expression "param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" identifier + (call_expression "CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" identifier (argument_list "((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" ( (binary_expression "(uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uVar21 - uVar12)" ( (binary_expression "uVar21 - uVar12" identifier - identifier) )) - (call_expression "(uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 < uVar22 - uVar14)" ( (binary_expression "uVar22 < uVar22 - uVar14" identifier < (binary_expression "uVar22 - uVar14" identifier - identifier)) )))) , (binary_expression "uVar22 - uVar14" identifier - identifier) ))))) ;) (expression_statement "uVar18 = (uint)lVar3;" (assignment_expression "uVar18 = (uint)lVar3" identifier = (cast_expression "(uint)lVar3" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar31 = (uint)((ulonglong)lVar3 >> 0x20);" (assignment_expression "uVar31 = (uint)((ulonglong)lVar3 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar3 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar3 >> 0x20)" ( (binary_expression "(ulonglong)lVar3 >> 0x20" (cast_expression "(ulonglong)lVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "uVar19 = piVar29[3];" (assignment_expression "uVar19 = piVar29[3]" identifier = (subscript_expression "piVar29[3]" identifier [ number_literal ])) ;) (if_statement "if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" if (parenthesized_expression "((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18))))" ( (binary_expression "(uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))" (parenthesized_expression "(uVar26 < uVar31)" ( (binary_expression "uVar26 < uVar31" identifier < identifier) )) || (parenthesized_expression "((uVar31 == uVar26 && (uVar19 < uVar18)))" ( (parenthesized_expression "(uVar31 == uVar26 && (uVar19 < uVar18))" ( (binary_expression "uVar31 == uVar26 && (uVar19 < uVar18)" (binary_expression "uVar31 == uVar26" identifier == identifier) && (parenthesized_expression "(uVar19 < uVar18)" ( (binary_expression "uVar19 < uVar18" identifier < identifier) ))) )) ))) )) (compound_statement "{\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }" { (expression_statement "uVar28 = 0x1215;" (assignment_expression "uVar28 = 0x1215" identifier = number_literal) ;) (if_statement "if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;" if (parenthesized_expression "(*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0')" ( (binary_expression "*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0'" (pointer_expression "*(char *)(*(int *)(iVar17 + 4) + 0xac)" * (cast_expression "(char *)(*(int *)(iVar17 + 4) + 0xac)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar17 + 4) + 0xac)" ( (binary_expression "*(int *)(iVar17 + 4) + 0xac" (pointer_expression "*(int *)(iVar17 + 4)" * (cast_expression "(int *)(iVar17 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar17 + 4)" ( (binary_expression "iVar17 + 4" identifier + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;)) (expression_statement "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);" (assignment_expression "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215)" identifier = (call_expression "(**(code **)(*piVar29 + 0x24))(piVar29,0x1215)" (parenthesized_expression "(**(code **)(*piVar29 + 0x24))" ( (pointer_expression "**(code **)(*piVar29 + 0x24)" * (pointer_expression "*(code **)(*piVar29 + 0x24)" * (cast_expression "(code **)(*piVar29 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x24)" ( (binary_expression "*piVar29 + 0x24" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29,0x1215)" ( identifier , number_literal )))) ;) (expression_statement "iVar30 = *piVar23;" (assignment_expression "iVar30 = *piVar23" identifier = (pointer_expression "*piVar23" * identifier)) ;) (if_statement "if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;" if (parenthesized_expression "(-1 < *(int *)(iVar30 + 0x20))" ( (binary_expression "-1 < *(int *)(iVar30 + 0x20)" number_literal < (pointer_expression "*(int *)(iVar30 + 0x20)" * (cast_expression "(int *)(iVar30 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar30 + 0x20)" ( (binary_expression "iVar30 + 0x20" identifier + number_literal) ))))) )) (goto_statement "goto LAB_00187bd4;" goto statement_identifier ;)) (expression_statement "uVar20 = *(undefined4 *)(iVar30 + 0xc);" (assignment_expression "uVar20 = *(undefined4 *)(iVar30 + 0xc)" identifier = (pointer_expression "*(undefined4 *)(iVar30 + 0xc)" * (cast_expression "(undefined4 *)(iVar30 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar30 + 0xc)" ( (binary_expression "iVar30 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "uVar28 = *(undefined4 *)(iVar30 + 8);" (assignment_expression "uVar28 = *(undefined4 *)(iVar30 + 8)" identifier = (pointer_expression "*(undefined4 *)(iVar30 + 8)" * (cast_expression "(undefined4 *)(iVar30 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar30 + 8)" ( (binary_expression "iVar30 + 8" identifier + number_literal) ))))) ;) (if_statement "if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }" { (expression_statement "uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);" (assignment_expression "uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar4 + 0x5aa8)" ( (binary_expression "puVar4 + 0x5aa8" identifier + number_literal) )))) ;) (expression_statement "(*(code *)PTR_gold_error_00432d84)(uVar28);" (call_expression "(*(code *)PTR_gold_error_00432d84)(uVar28)" (parenthesized_expression "(*(code *)PTR_gold_error_00432d84)" ( (pointer_expression "*(code *)PTR_gold_error_00432d84" * (cast_expression "(code *)PTR_gold_error_00432d84" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar28)" ( identifier ))) ;) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) }) (else_clause "else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }" else (compound_statement "{\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }" { (expression_statement "uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);" (assignment_expression "uVar11 = (*(code *)PTR_gettext_00436818)(puVar5)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar5)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar5)" ( identifier )))) ;) (expression_statement "(*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);" (call_expression "(*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20)" (parenthesized_expression "(*(code *)PTR_gold_error_00432d84)" ( (pointer_expression "*(code *)PTR_gold_error_00432d84" * (cast_expression "(code *)PTR_gold_error_00432d84" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20)" ( identifier , (pointer_expression "*(undefined4 *)(iVar10 + 0x24)" * (cast_expression "(undefined4 *)(iVar10 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x24)" ( (binary_expression "iVar10 + 0x24" identifier + number_literal) )))) , identifier , identifier , identifier , identifier ))) ;) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) }))) }) (else_clause "else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" else (if_statement "if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }" { (if_statement "if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }" if (parenthesized_expression "(((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22))))" ( (binary_expression "((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))" (parenthesized_expression "((int)uVar27 < (int)uVar21)" ( (binary_expression "(int)uVar27 < (int)uVar21" (cast_expression "(int)uVar27" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((uVar21 == uVar27 && (uVar24 < uVar22)))" ( (parenthesized_expression "(uVar21 == uVar27 && (uVar24 < uVar22))" ( (binary_expression "uVar21 == uVar27 && (uVar24 < uVar22)" (binary_expression "uVar21 == uVar27" identifier == identifier) && (parenthesized_expression "(uVar24 < uVar22)" ( (binary_expression "uVar24 < uVar22" identifier < identifier) ))) )) ))) )) (compound_statement "{\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }" { (expression_statement "uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);" (assignment_expression "uVar28 = (*(code *)PTR_gettext_00436818)(puVar6)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar6)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar6)" ( identifier )))) ;) (expression_statement "(*(code *)PTR_gold_warning_0043245c)(uVar28);" (call_expression "(*(code *)PTR_gold_warning_0043245c)(uVar28)" (parenthesized_expression "(*(code *)PTR_gold_warning_0043245c)" ( (pointer_expression "*(code *)PTR_gold_warning_0043245c" * (cast_expression "(code *)PTR_gold_warning_0043245c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar28)" ( identifier ))) ;) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (-1 < piVar29[8]) goto LAB_00187bd4;" if (parenthesized_expression "(-1 < piVar29[8])" ( (binary_expression "-1 < piVar29[8]" number_literal < (subscript_expression "piVar29[8]" identifier [ number_literal ])) )) (goto_statement "goto LAB_00187bd4;" goto statement_identifier ;)) (expression_statement "uVar26 = piVar29[2];" (assignment_expression "uVar26 = piVar29[2]" identifier = (subscript_expression "piVar29[2]" identifier [ number_literal ])) ;) (expression_statement "uVar19 = piVar29[3];" (assignment_expression "uVar19 = piVar29[3]" identifier = (subscript_expression "piVar29[3]" identifier [ number_literal ])) ;) })) (expression_statement "uVar18 = uVar22 - uVar18;" (assignment_expression "uVar18 = uVar22 - uVar18" identifier = (binary_expression "uVar22 - uVar18" identifier - identifier)) ;) (expression_statement "bVar2 = uVar22 < uVar18;" (assignment_expression "bVar2 = uVar22 < uVar18" identifier = (binary_expression "uVar22 < uVar18" identifier < identifier)) ;) (expression_statement "uVar22 = uVar18 + uVar19;" (assignment_expression "uVar22 = uVar18 + uVar19" identifier = (binary_expression "uVar18 + uVar19" identifier + identifier)) ;) (expression_statement "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;" (assignment_expression "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" identifier = (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2)" (call_expression "(uint)(uVar22 < uVar18)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 < uVar18)" ( (binary_expression "uVar22 < uVar18" identifier < identifier) ))) + (parenthesized_expression "((uVar21 - uVar31) - (uint)bVar2)" ( (binary_expression "(uVar21 - uVar31) - (uint)bVar2" (parenthesized_expression "(uVar21 - uVar31)" ( (binary_expression "uVar21 - uVar31" identifier - identifier) )) - (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) ))) + identifier)) ;) (expression_statement "uVar24 = uVar22;" (assignment_expression "uVar24 = uVar22" identifier = identifier) ;) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) }) (else_clause "else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" else (compound_statement "{\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" { (expression_statement "uVar18 = uVar22 - uVar18;" (assignment_expression "uVar18 = uVar22 - uVar18" identifier = (binary_expression "uVar22 - uVar18" identifier - identifier)) ;) (expression_statement "bVar2 = uVar22 < uVar18;" (assignment_expression "bVar2 = uVar22 < uVar18" identifier = (binary_expression "uVar22 < uVar18" identifier < identifier)) ;) (expression_statement "uVar22 = uVar18 + uVar19;" (assignment_expression "uVar22 = uVar18 + uVar19" identifier = (binary_expression "uVar18 + uVar19" identifier + identifier)) ;) (if_statement "if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n              uVar24 = uVar22;\n            }" { (expression_statement "uVar24 = uVar22;" (assignment_expression "uVar24 = uVar22" identifier = identifier) ;) })) (expression_statement "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;" (assignment_expression "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" identifier = (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2)" (call_expression "(uint)(uVar22 < uVar18)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 < uVar18)" ( (binary_expression "uVar22 < uVar18" identifier < identifier) ))) + (parenthesized_expression "((uVar21 - uVar31) - (uint)bVar2)" ( (binary_expression "(uVar21 - uVar31) - (uint)bVar2" (parenthesized_expression "(uVar21 - uVar31)" ( (binary_expression "uVar21 - uVar31" identifier - identifier) )) - (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) ))) + identifier)) ;) (if_statement "if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n              uVar25 = uVar21;\n            }" { (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) })) }))))) (if_statement "if (piVar29[8] << 2 < 0) goto LAB_00187b94;" if (parenthesized_expression "(piVar29[8] << 2 < 0)" ( (binary_expression "piVar29[8] << 2 < 0" (binary_expression "piVar29[8] << 2" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal) < number_literal) )) (goto_statement "goto LAB_00187b94;" goto statement_identifier ;)) (expression_statement "piVar29[6] = uVar25;" (assignment_expression "piVar29[6] = uVar25" (subscript_expression "piVar29[6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar29[7] = uVar24;" (assignment_expression "piVar29[7] = uVar24" (subscript_expression "piVar29[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;" (assignment_expression "*(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) = (binary_expression "*(byte *)(piVar29 + 8) & 0xdf | 0x20" (binary_expression "*(byte *)(piVar29 + 8) & 0xdf" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (if_statement "if (piVar29[8] << 1 < 0) goto LAB_0018736c;" if (parenthesized_expression "(piVar29[8] << 1 < 0)" ( (binary_expression "piVar29[8] << 1 < 0" (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal) < number_literal) )) (goto_statement "goto LAB_0018736c;" goto statement_identifier ;)) (expression_statement "(**(code **)(*piVar29 + 0x38))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x38))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x38))" ( (pointer_expression "**(code **)(*piVar29 + 0x38)" * (pointer_expression "*(code **)(*piVar29 + 0x38)" * (cast_expression "(code **)(*piVar29 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x38)" ( (binary_expression "*piVar29 + 0x38" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29)" ( identifier ))) ;) (expression_statement "iVar10 = piVar29[8];" (assignment_expression "iVar10 = piVar29[8]" identifier = (subscript_expression "piVar29[8]" identifier [ number_literal ])) ;) (expression_statement "uVar26 = uVar24;" (assignment_expression "uVar26 = uVar24" identifier = identifier) ;) (labeled_statement "joined_r0x001878b8:\n          uVar24 = uVar26;" statement_identifier : (expression_statement "uVar24 = uVar26;" (assignment_expression "uVar24 = uVar26" identifier = identifier) ;)) (if_statement "if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }" if (parenthesized_expression "(-1 < iVar10 << 1)" ( (binary_expression "-1 < iVar10 << 1" number_literal < (binary_expression "iVar10 << 1" identifier << number_literal)) )) (compound_statement "{\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }" { (labeled_statement "LAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c)" (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,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x751c" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) }) (else_clause "else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }" else (compound_statement "{\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }" { (expression_statement "iVar10 = *piVar23;" (assignment_expression "iVar10 = *piVar23" identifier = (pointer_expression "*piVar23" * identifier)) ;) (if_statement "if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }" if (parenthesized_expression "(-1 < *(int *)(iVar10 + 0x20) << 2)" ( (binary_expression "-1 < *(int *)(iVar10 + 0x20) << 2" number_literal < (binary_expression "*(int *)(iVar10 + 0x20) << 2" (pointer_expression "*(int *)(iVar10 + 0x20)" * (cast_expression "(int *)(iVar10 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x20)" ( (binary_expression "iVar10 + 0x20" identifier + number_literal) )))) << number_literal)) )) (compound_statement "{\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }" { (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818)" (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,\n                                PTR_s_alize_xindex_004323b4 + 0x7818)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7818" identifier + number_literal) )))) ;) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "uVar21 = *(uint *)(iVar10 + 0x18);" (assignment_expression "uVar21 = *(uint *)(iVar10 + 0x18)" identifier = (pointer_expression "*(uint *)(iVar10 + 0x18)" * (cast_expression "(uint *)(iVar10 + 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x18)" ( (binary_expression "iVar10 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "uVar22 = *(uint *)(iVar10 + 0x1c);" (assignment_expression "uVar22 = *(uint *)(iVar10 + 0x1c)" identifier = (pointer_expression "*(uint *)(iVar10 + 0x1c)" * (cast_expression "(uint *)(iVar10 + 0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x1c)" ( (binary_expression "iVar10 + 0x1c" identifier + number_literal) ))))) ;) (expression_statement "uVar24 = uVar22;" (assignment_expression "uVar24 = uVar22" identifier = identifier) ;) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) }))) }) (else_clause "else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }" else (compound_statement "{\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }" { (expression_statement "uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();" (assignment_expression "uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))()" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0xc))()" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0xc))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0xc)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0xc)" * (cast_expression "(code **)(*(int *)*piVar23 + 0xc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0xc)" ( (binary_expression "*(int *)*piVar23 + 0xc" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" { (if_statement "if (*in_stack_00000024 == '\0') goto LAB_00187254;" if (parenthesized_expression "(*in_stack_00000024 == '\0')" ( (binary_expression "*in_stack_00000024 == '\0'" (pointer_expression "*in_stack_00000024" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00187254;" goto statement_identifier ;)) (expression_statement "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));" (assignment_expression "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" identifier = (call_expression "maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" identifier (argument_list "(*(Output_segment **)(iVar17 + 0x170))" ( (pointer_expression "*(Output_segment **)(iVar17 + 0x170)" * (cast_expression "(Output_segment **)(iVar17 + 0x170)" ( (type_descriptor "Output_segment **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar17 + 0x170)" ( (binary_expression "iVar17 + 0x170" identifier + number_literal) )))) )))) ;) (if_statement "if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }" if (parenthesized_expression "(uVar32 < uVar33)" ( (binary_expression "uVar32 < uVar33" identifier < identifier) )) (compound_statement "{\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }" { (expression_statement "*in_stack_00000024 = '\0';" (assignment_expression "*in_stack_00000024 = '\0'" (pointer_expression "*in_stack_00000024" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "uVar32 = uVar33;" (assignment_expression "uVar32 = uVar33" identifier = identifier) ;) }) (else_clause "else {\n            *in_stack_00000024 = '\0';\n          }" else (compound_statement "{\n            *in_stack_00000024 = '\0';\n          }" { (expression_statement "*in_stack_00000024 = '\0';" (assignment_expression "*in_stack_00000024 = '\0'" (pointer_expression "*in_stack_00000024" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) }))) (expression_statement "piVar15 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar15 = (int *)PTR_parameters_00432be0" identifier = (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" ( (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" * (cast_expression "(undefined4 *)PTR_parameters_00432be0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )))) ;) }) (else_clause "else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" else (compound_statement "{\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" { (if_statement "if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }" if (parenthesized_expression "(*in_stack_00000024 == '\0')" ( (binary_expression "*in_stack_00000024 == '\0'" (pointer_expression "*in_stack_00000024" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }" { (if_statement "if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }" if (parenthesized_expression "(*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0)" ( (binary_expression "*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0" (pointer_expression "*(Output_segment **)(iVar17 + 0x170)" * (cast_expression "(Output_segment **)(iVar17 + 0x170)" ( (type_descriptor "Output_segment **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar17 + 0x170)" ( (binary_expression "iVar17 + 0x170" identifier + number_literal) )))) == (cast_expression "(Output_segment *)0x0" ( (type_descriptor "Output_segment *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }" { (expression_statement "uVar28 = 0x11c4;" (assignment_expression "uVar28 = 0x11c4" identifier = number_literal) ;) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));" (assignment_expression "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" identifier = (call_expression "maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" identifier (argument_list "(*(Output_segment **)(iVar17 + 0x170))" ( (pointer_expression "*(Output_segment **)(iVar17 + 0x170)" * (cast_expression "(Output_segment **)(iVar17 + 0x170)" ( (type_descriptor "Output_segment **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar17 + 0x170)" ( (binary_expression "iVar17 + 0x170" identifier + number_literal) )))) )))) ;) (if_statement "if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }" if (parenthesized_expression "(uVar33 < uVar32)" ( (binary_expression "uVar33 < uVar32" identifier < identifier) )) (compound_statement "{\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }" { (expression_statement "uVar28 = 0x11c6;" (assignment_expression "uVar28 = 0x11c6" identifier = number_literal) ;) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "*in_stack_00000024 = '\x01';" (assignment_expression "*in_stack_00000024 = '\x01'" (pointer_expression "*in_stack_00000024" * identifier) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "uVar32 = uVar33;" (assignment_expression "uVar32 = uVar33" identifier = identifier) ;) })) (labeled_statement "LAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;" statement_identifier : (expression_statement "piVar15 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar15 = (int *)PTR_parameters_00432be0" identifier = (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" ( (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" * (cast_expression "(undefined4 *)PTR_parameters_00432be0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )))) ;) }))) (if_statement "if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }" { (if_statement "if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }" if (parenthesized_expression "(((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0))" ( (binary_expression "((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)" (parenthesized_expression "((uVar21 != uVar27) || (uVar22 != uVar24))" ( (binary_expression "(uVar21 != uVar27) || (uVar22 != uVar24)" (parenthesized_expression "(uVar21 != uVar27)" ( (binary_expression "uVar21 != uVar27" identifier != identifier) )) || (parenthesized_expression "(uVar22 != uVar24)" ( (binary_expression "uVar22 != uVar24" identifier != identifier) ))) )) && (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) ))) )) (compound_statement "{\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }" { (expression_statement "uVar28 = 0x11df;" (assignment_expression "uVar28 = 0x11df" identifier = number_literal) ;) (labeled_statement "LAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014)" (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 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + 0x59f0" identifier + number_literal) , identifier , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7014" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) (if_statement "if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }" if (parenthesized_expression "(uVar32 != 0)" ( (binary_expression "uVar32 != 0" identifier != number_literal) )) (compound_statement "{\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }" { (expression_statement "lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);" (assignment_expression "lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" identifier = (binary_expression "uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" identifier + (call_expression "CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" identifier (argument_list "((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" ( (binary_expression "(uint)(uVar22 - 1 < uVar22) + (uVar21 - 1)" (call_expression "(uint)(uVar22 - 1 < uVar22)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 - 1 < uVar22)" ( (binary_expression "uVar22 - 1 < uVar22" (binary_expression "uVar22 - 1" identifier - number_literal) < identifier) ))) + (parenthesized_expression "(uVar21 - 1)" ( (binary_expression "uVar21 - 1" identifier - number_literal) ))) , (binary_expression "uVar22 - 1" identifier - number_literal) ))))) ;) (expression_statement "uVar22 = (uint)lVar3 & -(int)uVar32;" (assignment_expression "uVar22 = (uint)lVar3 & -(int)uVar32" identifier = (binary_expression "(uint)lVar3 & -(int)uVar32" (cast_expression "(uint)lVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & (unary_expression "-(int)uVar32" - (cast_expression "(int)uVar32" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) (expression_statement "uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20)" identifier = (binary_expression "(uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20)" (call_expression "(uint)((ulonglong)lVar3 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar3 >> 0x20)" ( (binary_expression "(ulonglong)lVar3 >> 0x20" (cast_expression "(ulonglong)lVar3" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) & (binary_expression "-(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20)" (unary_expression "-(uint)(-(int)uVar32 != 0)" - (call_expression "(uint)(-(int)uVar32 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(-(int)uVar32 != 0)" ( (binary_expression "-(int)uVar32 != 0" (unary_expression "-(int)uVar32" - (cast_expression "(int)uVar32" ( (type_descriptor "int" primitive_type) ) identifier)) != number_literal) )))) - (cast_expression "(int)(uVar32 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uVar32 >> 0x20)" ( (binary_expression "uVar32 >> 0x20" identifier >> number_literal) )))))) ;) })) (expression_statement "uVar26 = uVar22;" (assignment_expression "uVar26 = uVar22" identifier = identifier) ;) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) (if_statement "if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }" if (parenthesized_expression "((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0))" ( (binary_expression "(iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)" (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) && (parenthesized_expression "(uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)" ( (comma_expression "uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0" (assignment_expression "uVar26 = uVar24" identifier = identifier) , (comma_expression "uVar25 = uVar27, iVar8 == 0" (assignment_expression "uVar25 = uVar27" identifier = identifier) , (binary_expression "iVar8 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }" { (expression_statement "uVar26 = uVar22;" (assignment_expression "uVar26 = uVar22" identifier = identifier) ;) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) })) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }" if (parenthesized_expression "(piVar29[8] < 0)" ( (binary_expression "piVar29[8] < 0" (subscript_expression "piVar29[8]" identifier [ number_literal ]) < number_literal) )) (compound_statement "{\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }" { (labeled_statement "LAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540)" (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,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7540" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "bVar1 = *(byte *)(piVar29 + 8);" (assignment_expression "bVar1 = *(byte *)(piVar29 + 8)" identifier = (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) ))))) ;) (expression_statement "*(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);" (assignment_expression "*(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" (pointer_expression "*(ulonglong *)(piVar29 + 2)" * (cast_expression "(ulonglong *)(piVar29 + 2)" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 2)" ( (binary_expression "piVar29 + 2" identifier + number_literal) )))) = (binary_expression "param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" identifier + (call_expression "CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" identifier (argument_list "((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" ( (binary_expression "(uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uVar21 - uVar12)" ( (binary_expression "uVar21 - uVar12" identifier - identifier) )) - (call_expression "(uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 < uVar22 - uVar14)" ( (binary_expression "uVar22 < uVar22 - uVar14" identifier < (binary_expression "uVar22 - uVar14" identifier - identifier)) )))) , (binary_expression "uVar22 - uVar14" identifier - identifier) ))))) ;) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x7f | 0x80" (binary_expression "bVar1 & 0x7f" identifier & number_literal) | number_literal)) ;) (if_statement "if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }" if (parenthesized_expression "(piVar29[8] << 2 < 0)" ( (binary_expression "piVar29[8] << 2 < 0" (binary_expression "piVar29[8] << 2" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal) < number_literal) )) (compound_statement "{\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }" { (labeled_statement "LAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000)" (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,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 30000" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "piVar29[6] = uVar25;" (assignment_expression "piVar29[6] = uVar25" (subscript_expression "piVar29[6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar29[7] = uVar26;" (assignment_expression "piVar29[7] = uVar26" (subscript_expression "piVar29[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x5f | 0xa0" (binary_expression "bVar1 & 0x5f" identifier & number_literal) | number_literal)) ;) (expression_statement "uVar24 = uVar26;" (assignment_expression "uVar24 = uVar26" identifier = identifier) ;) (if_statement "if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }" if (parenthesized_expression "(-1 < piVar29[8] << 1)" ( (binary_expression "-1 < piVar29[8] << 1" number_literal < (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal)) )) (compound_statement "{\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }" { (expression_statement "(**(code **)(*piVar29 + 0x38))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x38))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x38))" ( (pointer_expression "**(code **)(*piVar29 + 0x38)" * (pointer_expression "*(code **)(*piVar29 + 0x38)" * (cast_expression "(code **)(*piVar29 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x38)" ( (binary_expression "*piVar29 + 0x38" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29)" ( identifier ))) ;) (expression_statement "iVar10 = piVar29[8];" (assignment_expression "iVar10 = piVar29[8]" identifier = (subscript_expression "piVar29[8]" identifier [ number_literal ])) ;) (goto_statement "goto joined_r0x001878b8;" goto statement_identifier ;) })) }) (else_clause "else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }" else (compound_statement "{\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }" { (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }" if (parenthesized_expression "(-1 < piVar29[8] << 1)" ( (binary_expression "-1 < piVar29[8] << 1" number_literal < (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal)) )) (compound_statement "{\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }" { (expression_statement "(**(code **)(*piVar29 + 0x34))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x34))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x34))" ( (pointer_expression "**(code **)(*piVar29 + 0x34)" * (pointer_expression "*(code **)(*piVar29 + 0x34)" * (cast_expression "(code **)(*piVar29 + 0x34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x34)" ( (binary_expression "*piVar29 + 0x34" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29)" ( identifier ))) ;) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) })) (expression_statement "uVar26 = piVar29[4];" (assignment_expression "uVar26 = piVar29[4]" identifier = (subscript_expression "piVar29[4]" identifier [ number_literal ])) ;) (expression_statement "uVar27 = piVar29[5];" (assignment_expression "uVar27 = piVar29[5]" identifier = (subscript_expression "piVar29[5]" identifier [ number_literal ])) ;) (expression_statement "uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);" (assignment_expression "uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600)" identifier = (call_expression "(*(code *)PTR_allocate_00432eb4)(iVar17 + 600)" (parenthesized_expression "(*(code *)PTR_allocate_00432eb4)" ( (pointer_expression "*(code *)PTR_allocate_00432eb4" * (cast_expression "(code *)PTR_allocate_00432eb4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar17 + 600)" ( (binary_expression "iVar17 + 600" identifier + number_literal) )))) ;) (expression_statement "uVar21 = (uint)((ulonglong)uVar34 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)uVar34 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)uVar34 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)uVar34 >> 0x20)" ( (binary_expression "(ulonglong)uVar34 >> 0x20" (cast_expression "(ulonglong)uVar34" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "uVar22 = (uint)uVar34;" (assignment_expression "uVar22 = (uint)uVar34" identifier = (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar21 == 0xffffffff) goto LAB_00187acc;" if (parenthesized_expression "(uVar21 == 0xffffffff)" ( (binary_expression "uVar21 == 0xffffffff" identifier == number_literal) )) (goto_statement "goto LAB_00187acc;" goto statement_identifier ;)) (while_statement "while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }" { (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (piVar29[8] < 0) goto LAB_00187b74;" if (parenthesized_expression "(piVar29[8] < 0)" ( (binary_expression "piVar29[8] < 0" (subscript_expression "piVar29[8]" identifier [ number_literal ]) < number_literal) )) (goto_statement "goto LAB_00187b74;" goto statement_identifier ;)) (expression_statement "bVar1 = *(byte *)(piVar29 + 8);" (assignment_expression "bVar1 = *(byte *)(piVar29 + 8)" identifier = (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) ))))) ;) (expression_statement "*(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);" (assignment_expression "*(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" (pointer_expression "*(ulonglong *)(piVar29 + 2)" * (cast_expression "(ulonglong *)(piVar29 + 2)" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 2)" ( (binary_expression "piVar29 + 2" identifier + number_literal) )))) = (binary_expression "param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" identifier + (call_expression "CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" identifier (argument_list "((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" ( (binary_expression "(uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uVar21 - uVar12)" ( (binary_expression "uVar21 - uVar12" identifier - identifier) )) - (call_expression "(uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar22 < uVar22 - uVar14)" ( (binary_expression "uVar22 < uVar22 - uVar14" identifier < (binary_expression "uVar22 - uVar14" identifier - identifier)) )))) , (binary_expression "uVar22 - uVar14" identifier - identifier) ))))) ;) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x7f | 0x80" (binary_expression "bVar1 & 0x7f" identifier & number_literal) | number_literal)) ;) (if_statement "if (piVar29[8] << 2 < 0) goto LAB_00187b94;" if (parenthesized_expression "(piVar29[8] << 2 < 0)" ( (binary_expression "piVar29[8] << 2 < 0" (binary_expression "piVar29[8] << 2" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal) < number_literal) )) (goto_statement "goto LAB_00187b94;" goto statement_identifier ;)) (expression_statement "piVar29[6] = uVar21;" (assignment_expression "piVar29[6] = uVar21" (subscript_expression "piVar29[6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar29[7] = uVar22;" (assignment_expression "piVar29[7] = uVar22" (subscript_expression "piVar29[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0" (pointer_expression "*(byte *)(piVar29 + 8)" * (cast_expression "(byte *)(piVar29 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar29 + 8)" ( (binary_expression "piVar29 + 8" identifier + number_literal) )))) = (binary_expression "bVar1 & 0x5f | 0xa0" (binary_expression "bVar1 & 0x5f" identifier & number_literal) | number_literal)) ;) (if_statement "if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }" if (parenthesized_expression "(-1 < piVar29[8] << 1)" ( (binary_expression "-1 < piVar29[8] << 1" number_literal < (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal)) )) (compound_statement "{\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }" { (expression_statement "(**(code **)(*piVar29 + 0x38))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x38))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x38))" ( (pointer_expression "**(code **)(*piVar29 + 0x38)" * (pointer_expression "*(code **)(*piVar29 + 0x38)" * (cast_expression "(code **)(*piVar29 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x38)" ( (binary_expression "*piVar29 + 0x38" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29)" ( identifier ))) ;) (if_statement "if (-1 < piVar29[8] << 1) goto LAB_001878c0;" if (parenthesized_expression "(-1 < piVar29[8] << 1)" ( (binary_expression "-1 < piVar29[8] << 1" number_literal < (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal)) )) (goto_statement "goto LAB_001878c0;" goto statement_identifier ;)) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (-1 < piVar29[8] << 1) goto LAB_00187b5c;" if (parenthesized_expression "(-1 < piVar29[8] << 1)" ( (binary_expression "-1 < piVar29[8] << 1" number_literal < (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" identifier [ number_literal ]) << number_literal)) )) (goto_statement "goto LAB_00187b5c;" goto statement_identifier ;)) })) (if_statement "if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;" if (parenthesized_expression "((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0))))" ( (binary_expression "(piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))" (parenthesized_expression "(piVar29[4] <= (int)uVar26)" ( (binary_expression "piVar29[4] <= (int)uVar26" (subscript_expression "piVar29[4]" identifier [ number_literal ]) <= (cast_expression "(int)uVar26" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))" ( (parenthesized_expression "(uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0))" ( (comma_expression "uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" (assignment_expression "uVar24 = uVar22" identifier = identifier) , (comma_expression "uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" (assignment_expression "uVar25 = uVar21" identifier = identifier) , (binary_expression "piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" (binary_expression "piVar29[4] != uVar26" (subscript_expression "piVar29[4]" identifier [ number_literal ]) != identifier) || (parenthesized_expression "(uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" ( (comma_expression "uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0" (assignment_expression "uVar26 = (uint)(uVar27 < (uint)piVar29[5])" identifier = (call_expression "(uint)(uVar27 < (uint)piVar29[5])" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar27 < (uint)piVar29[5])" ( (binary_expression "uVar27 < (uint)piVar29[5]" identifier < (cast_expression "(uint)piVar29[5]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "piVar29[5]" identifier [ number_literal ]))) )))) , (binary_expression "uVar26 == 0" identifier == number_literal)) ))))) )) ))) )) (break_statement "break;" break ;)) (expression_statement "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);" (assignment_expression "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29)" identifier = (call_expression "(**(code **)(*piVar29 + 0x24))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x24))" ( (pointer_expression "**(code **)(*piVar29 + 0x24)" * (pointer_expression "*(code **)(*piVar29 + 0x24)" * (cast_expression "(code **)(*piVar29 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar29 + 0x24)" ( (binary_expression "*piVar29 + 0x24" (pointer_expression "*piVar29" * identifier) + number_literal) ))))) )) (argument_list "(piVar29)" ( identifier )))) ;) (if_statement "if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }" { (expression_statement "uVar28 = 0x11f6;" (assignment_expression "uVar28 = 0x11f6" identifier = number_literal) ;) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;" (assignment_expression "puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + -0x299c" identifier + number_literal)) ;) (while_statement "while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }" { (expression_statement "uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);" (assignment_expression "uVar28 = (*(code *)PTR_gettext_00436818)(puVar16)" identifier = (call_expression "(*(code *)PTR_gettext_00436818)(puVar16)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" ( (pointer_expression "*(code *)PTR_gettext_00436818" * (cast_expression "(code *)PTR_gettext_00436818" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar16)" ( identifier )))) ;) (expression_statement "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);" (assignment_expression "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x24))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0x24)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0x24)" * (cast_expression "(code **)(*(int *)*piVar23 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0x24)" ( (binary_expression "*(int *)*piVar23 + 0x24" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "((int *)*piVar23)" ( (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier)) )))) ;) (expression_statement "(*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));" (call_expression "(*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24))" (parenthesized_expression "(*(code *)PTR_gold_fallback_00432ebc)" ( (pointer_expression "*(code *)PTR_gold_fallback_00432ebc" * (cast_expression "(code *)PTR_gold_fallback_00432ebc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar28,*(undefined4 *)(iVar10 + 0x24))" ( identifier , (pointer_expression "*(undefined4 *)(iVar10 + 0x24)" * (cast_expression "(undefined4 *)(iVar10 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x24)" ( (binary_expression "iVar10 + 0x24" identifier + number_literal) )))) ))) ;) (expression_statement "uVar34 = CONCAT44(uVar28,extraout_v1);" (assignment_expression "uVar34 = CONCAT44(uVar28,extraout_v1)" identifier = (call_expression "CONCAT44(uVar28,extraout_v1)" identifier (argument_list "(uVar28,extraout_v1)" ( identifier , identifier )))) ;) (labeled_statement "LAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);" statement_identifier : (expression_statement "uVar21 = (uint)((ulonglong)uVar34 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)uVar34 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)uVar34 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)uVar34 >> 0x20)" ( (binary_expression "(ulonglong)uVar34 >> 0x20" (cast_expression "(ulonglong)uVar34" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;)) (if_statement "if ((uint)uVar34 != uVar21) break;" if (parenthesized_expression "((uint)uVar34 != uVar21)" ( (binary_expression "(uint)uVar34 != uVar21" (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier) != identifier) )) (break_statement "break;" break ;)) (expression_statement "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);" (assignment_expression "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x24))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0x24)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0x24)" * (cast_expression "(code **)(*(int *)*piVar23 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0x24)" ( (binary_expression "*(int *)*piVar23 + 0x24" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "((int *)*piVar23)" ( (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier)) )))) ;) (if_statement "if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }" { (expression_statement "uVar28 = 0x11ee;" (assignment_expression "uVar28 = 0x11ee" identifier = number_literal) ;) (goto_statement "goto LAB_00187b08;" goto statement_identifier ;) })) (expression_statement "puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;" (assignment_expression "puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + -0x29e0" identifier + number_literal)) ;) })) })) }))) }))) (labeled_statement "LAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);" statement_identifier : (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15)" identifier = (call_expression "(*(code *)PTR_incremental_update_00432eb0)(*piVar15)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" ( (pointer_expression "*(code *)PTR_incremental_update_00432eb0" * (cast_expression "(code *)PTR_incremental_update_00432eb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*piVar15)" ( (pointer_expression "*piVar15" * identifier) )))) ;)) (if_statement "if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }" { (labeled_statement "LAB_00187410:\n        piVar15 = (int *)*piVar23;" statement_identifier : (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;)) }) (else_clause "else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }" else (compound_statement "{\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }" { (expression_statement "puVar13 = (undefined4 *)*piVar15;" (assignment_expression "puVar13 = (undefined4 *)*piVar15" identifier = (cast_expression "(undefined4 *)*piVar15" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar15" * identifier))) ;) (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }" if (parenthesized_expression "((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0))" ( (binary_expression "(puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)" (parenthesized_expression "(puVar13[2] != 0)" ( (binary_expression "puVar13[2] != 0" (subscript_expression "puVar13[2]" identifier [ number_literal ]) != number_literal) )) && (parenthesized_expression "((puVar13[5] & 0x10) != 0)" ( (binary_expression "(puVar13[5] & 0x10) != 0" (parenthesized_expression "(puVar13[5] & 0x10)" ( (binary_expression "puVar13[5] & 0x10" (subscript_expression "puVar13[5]" identifier [ number_literal ]) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }" { (expression_statement "uVar28 = *puVar13;" (assignment_expression "uVar28 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (if_statement "if (-1 < piVar15[8] << 1) goto LAB_00187b5c;" if (parenthesized_expression "(-1 < piVar15[8] << 1)" ( (binary_expression "-1 < piVar15[8] << 1" number_literal < (binary_expression "piVar15[8] << 1" (subscript_expression "piVar15[8]" identifier [ number_literal ]) << number_literal)) )) (goto_statement "goto LAB_00187b5c;" goto statement_identifier ;)) (expression_statement "iVar30 = piVar15[5];" (assignment_expression "iVar30 = piVar15[5]" identifier = (subscript_expression "piVar15[5]" identifier [ number_literal ])) ;) (expression_statement "iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);" (assignment_expression "iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15)" identifier = (call_expression "(**(code **)(*piVar15 + 0x24))(piVar15)" (parenthesized_expression "(**(code **)(*piVar15 + 0x24))" ( (pointer_expression "**(code **)(*piVar15 + 0x24)" * (pointer_expression "*(code **)(*piVar15 + 0x24)" * (cast_expression "(code **)(*piVar15 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar15 + 0x24)" ( (binary_expression "*piVar15 + 0x24" (pointer_expression "*piVar15" * identifier) + number_literal) ))))) )) (argument_list "(piVar15)" ( identifier )))) ;) (expression_statement "puVar16 = puVar7;" (assignment_expression "puVar16 = puVar7" identifier = identifier) ;) (if_statement "if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }" { (expression_statement "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);" (assignment_expression "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" identifier = (call_expression "(**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x24))" ( (pointer_expression "**(code **)(*(int *)*piVar23 + 0x24)" * (pointer_expression "*(code **)(*(int *)*piVar23 + 0x24)" * (cast_expression "(code **)(*(int *)*piVar23 + 0x24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)*piVar23 + 0x24)" ( (binary_expression "*(int *)*piVar23 + 0x24" (pointer_expression "*(int *)*piVar23" * (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) + number_literal) ))))) )) (argument_list "((int *)*piVar23)" ( (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier)) )))) ;) (expression_statement "puVar16 = *(undefined **)(iVar10 + 0x24);" (assignment_expression "puVar16 = *(undefined **)(iVar10 + 0x24)" identifier = (pointer_expression "*(undefined **)(iVar10 + 0x24)" * (cast_expression "(undefined **)(iVar10 + 0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x24)" ( (binary_expression "iVar10 + 0x24" identifier + number_literal) ))))) ;) })) (expression_statement "(*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);" (call_expression "(*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16)" (parenthesized_expression "(*(code *)PTR_debug_00432ce0)" ( (pointer_expression "*(code *)PTR_debug_00432ce0" * (cast_expression "(code *)PTR_debug_00432ce0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16)" ( identifier , (binary_expression "puVar4 + 0x5b24" identifier + number_literal) , identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_00187410;" goto statement_identifier ;) })) }))) (expression_statement "uVar27 = uVar25;" (assignment_expression "uVar27 = uVar25" identifier = identifier) ;) (if_statement "if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }" { (if_statement "if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }" if (parenthesized_expression "(-1 < piVar15[8] << 1)" ( (binary_expression "-1 < piVar15[8] << 1" number_literal < (binary_expression "piVar15[8] << 1" (subscript_expression "piVar15[8]" identifier [ number_literal ]) << number_literal)) )) (compound_statement "{\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }" { (labeled_statement "LAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);" statement_identifier : (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894)" (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,\n                              PTR_s_alize_xindex_004323b4 + 0x7894)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7894" identifier + number_literal) )))) ;)) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "uVar25 = uVar22 + piVar15[5];" (assignment_expression "uVar25 = uVar22 + piVar15[5]" identifier = (binary_expression "uVar22 + piVar15[5]" identifier + (subscript_expression "piVar15[5]" identifier [ number_literal ]))) ;) (if_statement "if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar24 = uVar25;\n        }" { (expression_statement "uVar24 = uVar25;" (assignment_expression "uVar24 = uVar25" identifier = identifier) ;) })) (expression_statement "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];" (assignment_expression "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" identifier = (binary_expression "(uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" (binary_expression "(uint)(uVar25 < uVar22) + uVar21" (call_expression "(uint)(uVar25 < uVar22)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar25 < uVar22)" ( (binary_expression "uVar25 < uVar22" identifier < identifier) ))) + identifier) + (subscript_expression "piVar15[4]" identifier [ number_literal ]))) ;) (if_statement "if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar27 = uVar21;\n        }" { (expression_statement "uVar27 = uVar21;" (assignment_expression "uVar27 = uVar21" identifier = identifier) ;) })) }) (else_clause "else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }" else (compound_statement "{\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }" { (expression_statement "uVar25 = uVar22;" (assignment_expression "uVar25 = uVar22" identifier = identifier) ;) (if_statement "if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }" { (if_statement "if (-1 < piVar15[8] << 1) goto LAB_00187b5c;" if (parenthesized_expression "(-1 < piVar15[8] << 1)" ( (binary_expression "-1 < piVar15[8] << 1" number_literal < (binary_expression "piVar15[8] << 1" (subscript_expression "piVar15[8]" identifier [ number_literal ]) << number_literal)) )) (goto_statement "goto LAB_00187b5c;" goto statement_identifier ;)) (expression_statement "uVar25 = uVar22 + piVar15[5];" (assignment_expression "uVar25 = uVar22 + piVar15[5]" identifier = (binary_expression "uVar22 + piVar15[5]" identifier + (subscript_expression "piVar15[5]" identifier [ number_literal ]))) ;) (expression_statement "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];" (assignment_expression "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" identifier = (binary_expression "(uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" (binary_expression "(uint)(uVar25 < uVar22) + uVar21" (call_expression "(uint)(uVar25 < uVar22)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar25 < uVar22)" ( (binary_expression "uVar25 < uVar22" identifier < identifier) ))) + identifier) + (subscript_expression "piVar15[4]" identifier [ number_literal ]))) ;) (expression_statement "uVar24 = uVar25;" (assignment_expression "uVar24 = uVar25" identifier = identifier) ;) (expression_statement "uVar27 = uVar21;" (assignment_expression "uVar27 = uVar21" identifier = identifier) ;) })) }))) (if_statement "if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }" if (parenthesized_expression "(((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25))))" ( (binary_expression "((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))" (parenthesized_expression "((int)local_78 < (int)uVar21)" ( (binary_expression "(int)local_78 < (int)uVar21" (cast_expression "(int)local_78" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((uVar21 == local_78 && (local_54 < uVar25)))" ( (parenthesized_expression "(uVar21 == local_78 && (local_54 < uVar25))" ( (binary_expression "uVar21 == local_78 && (local_54 < uVar25)" (binary_expression "uVar21 == local_78" identifier == identifier) && (parenthesized_expression "(local_54 < uVar25)" ( (binary_expression "local_54 < uVar25" identifier < identifier) ))) )) ))) )) (compound_statement "{\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }" { (expression_statement "local_78 = uVar21;" (assignment_expression "local_78 = uVar21" identifier = identifier) ;) (expression_statement "local_54 = uVar25;" (assignment_expression "local_54 = uVar25" identifier = identifier) ;) })) (expression_statement "iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);" (assignment_expression "iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15)" identifier = (call_expression "(**(code **)(*piVar15 + 0x18))(piVar15)" (parenthesized_expression "(**(code **)(*piVar15 + 0x18))" ( (pointer_expression "**(code **)(*piVar15 + 0x18)" * (pointer_expression "*(code **)(*piVar15 + 0x18)" * (cast_expression "(code **)(*piVar15 + 0x18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar15 + 0x18)" ( (binary_expression "*piVar15 + 0x18" (pointer_expression "*piVar15" * identifier) + number_literal) ))))) )) (argument_list "(piVar15)" ( identifier )))) ;) (if_statement "if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }" { (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (if_statement "if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }" if (parenthesized_expression "(*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4)" ( (binary_expression "*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4" (pointer_expression "*(code **)(*piVar15 + 0x30)" * (cast_expression "(code **)(*piVar15 + 0x30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar15 + 0x30)" ( (binary_expression "*piVar15 + 0x30" (pointer_expression "*piVar15" * identifier) + number_literal) )))) == (cast_expression "(code *)PTR_do_set_out_shndx_00432ea4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (compound_statement "{\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }" { (if_statement "if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }" if (parenthesized_expression "((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19]))" ( (binary_expression "(piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])" (parenthesized_expression "(piVar15[0x19] != -1)" ( (binary_expression "piVar15[0x19] != -1" (subscript_expression "piVar15[0x19]" identifier [ number_literal ]) != number_literal) )) && (parenthesized_expression "(*(int *)param_8 != piVar15[0x19])" ( (binary_expression "*(int *)param_8 != piVar15[0x19]" (pointer_expression "*(int *)param_8" * (cast_expression "(int *)param_8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != (subscript_expression "piVar15[0x19]" identifier [ number_literal ])) ))) )) (compound_statement "{\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }" { (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000)" (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,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7000" identifier + number_literal) )))) ;) (return_statement "return uVar32;" return identifier ;) })) (expression_statement "piVar15[0x19] = *(int *)param_8;" (assignment_expression "piVar15[0x19] = *(int *)param_8" (subscript_expression "piVar15[0x19]" identifier [ number_literal ]) = (pointer_expression "*(int *)param_8" * (cast_expression "(int *)param_8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) }) (else_clause "else {\n          (**(code **)(*piVar15 + 0x30))();\n        }" else (compound_statement "{\n          (**(code **)(*piVar15 + 0x30))();\n        }" { (expression_statement "(**(code **)(*piVar15 + 0x30))();" (call_expression "(**(code **)(*piVar15 + 0x30))()" (parenthesized_expression "(**(code **)(*piVar15 + 0x30))" ( (pointer_expression "**(code **)(*piVar15 + 0x30)" * (pointer_expression "*(code **)(*piVar15 + 0x30)" * (cast_expression "(code **)(*piVar15 + 0x30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar15 + 0x30)" ( (binary_expression "*piVar15 + 0x30" (pointer_expression "*piVar15" * identifier) + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) (expression_statement "*(int *)param_8 = *(int *)param_8 + 1;" (assignment_expression "*(int *)param_8 = *(int *)param_8 + 1" (pointer_expression "*(int *)param_8" * (cast_expression "(int *)param_8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "*(int *)param_8 + 1" (pointer_expression "*(int *)param_8" * (cast_expression "(int *)param_8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal)) ;) })) (expression_statement "piVar23 = piVar23 + 1;" (assignment_expression "piVar23 = piVar23 + 1" identifier = (binary_expression "piVar23 + 1" identifier + number_literal)) ;) (expression_statement "uVar22 = uVar25;" (assignment_expression "uVar22 = uVar25" identifier = identifier) ;) }) while (parenthesized_expression "(*(int **)((int)param_5 + 4) != piVar23)" ( (binary_expression "*(int **)((int)param_5 + 4) != piVar23" (pointer_expression "*(int **)((int)param_5 + 4)" * (cast_expression "(int **)((int)param_5 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)param_5 + 4)" ( (binary_expression "(int)param_5 + 4" (cast_expression "(int)param_5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != identifier) )) ;) (expression_statement "param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);" (assignment_expression "param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" identifier = (binary_expression "param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" identifier + (call_expression "CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" identifier (argument_list "((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" ( (binary_expression "(local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14)" (parenthesized_expression "(local_78 - uVar12)" ( (binary_expression "local_78 - uVar12" identifier - identifier) )) - (call_expression "(uint)(local_54 < local_54 - uVar14)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_54 < local_54 - uVar14)" ( (binary_expression "local_54 < local_54 - uVar14" identifier < (binary_expression "local_54 - uVar14" identifier - identifier)) )))) , (binary_expression "local_54 - uVar14" identifier - identifier) ))))) ;) })) (expression_statement "*(uint *)param_6 = local_78;" (assignment_expression "*(uint *)param_6 = local_78" (pointer_expression "*(uint *)param_6" * (cast_expression "(uint *)param_6" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) (expression_statement "*(uint *)((int)param_6 + 4) = local_54;" (assignment_expression "*(uint *)((int)param_6 + 4) = local_54" (pointer_expression "*(uint *)((int)param_6 + 4)" * (cast_expression "(uint *)((int)param_6 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_6 + 4)" ( (binary_expression "(int)param_6 + 4" (cast_expression "(int)param_6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*param_7 = uVar27;" (assignment_expression "*param_7 = uVar27" (pointer_expression "*param_7" * identifier) = identifier) ;) (expression_statement "param_7[1] = uVar24;" (assignment_expression "param_7[1] = uVar24" (subscript_expression "param_7[1]" identifier [ number_literal ]) = identifier) ;) (return_statement "return param_4;" return identifier ;) })))
(translation_unit (function_definition TYPE (ERROR IDENT : : IDENT : :) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) + LIT) ))))) )) (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) , 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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) + LIT) ))))) )) (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (subscript_expression IDENT [ LIT ]) << LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + 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 (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) )) [ LIT ]) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (subscript_expression IDENT [ LIT ])) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (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) )))) ;)) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (call_expression IDENT (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT - IDENT)) )))) , (binary_expression IDENT - IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == IDENT) && (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (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) )))) + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (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 , LIT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (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) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) )))) ;) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (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 , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) }))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (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 IDENT < IDENT) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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 ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (subscript_expression IDENT [ LIT ])) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) + (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) + IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) + (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) }))))) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) << LIT) < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) << LIT) < LIT) )) (goto_statement goto statement_identifier ;)) (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 (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression IDENT << LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (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) )))) ;)) (return_statement return IDENT ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * 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)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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) )))) ;) (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 = (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) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) + LIT) ))))) )) (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != IDENT) )) || (parenthesized_expression ( (binary_expression IDENT != IDENT) ))) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (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) )))) ;)) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (call_expression IDENT (argument_list ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT - LIT) < IDENT) ))) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) , (binary_expression IDENT - LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & (unary_expression - (cast_expression ( (type_descriptor TYPE) ) IDENT)))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) & (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (unary_expression - (cast_expression ( (type_descriptor TYPE) ) IDENT)) != LIT) )))) - (cast_expression ( (type_descriptor TYPE) ) (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 (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT == LIT))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) < LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (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) )))) ;)) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + (call_expression IDENT (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT - IDENT)) )))) , (binary_expression IDENT - IDENT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) << LIT) < LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (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) )))) ;)) (return_statement return IDENT ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (subscript_expression IDENT [ LIT ]) << LIT)) )) (compound_statement { (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 (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (subscript_expression IDENT [ LIT ]) << LIT)) )) (compound_statement { (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 (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + (call_expression IDENT (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT - IDENT)) )))) , (binary_expression IDENT - IDENT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) << LIT) < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (subscript_expression IDENT [ LIT ]) << LIT)) )) (compound_statement { (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 (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (subscript_expression IDENT [ LIT ]) << LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (subscript_expression IDENT [ LIT ]) << LIT)) )) (goto_statement goto statement_identifier ;)) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) <= (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) != IDENT) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) )))) , (binary_expression IDENT == LIT)) ))))) )) ))) )) (break_statement break ;)) (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 = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( 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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) + LIT) ))))) )) (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != IDENT) )) (break_statement break ;)) (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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) + LIT) ))))) )) (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) })) }))) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * IDENT) )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) & LIT) )) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (subscript_expression IDENT [ LIT ]) << LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ 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 = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) + LIT) ))))) )) (argument_list ( (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 * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT , IDENT , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (subscript_expression IDENT [ LIT ]) << LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (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) )))) ;)) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) + IDENT) + (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (subscript_expression IDENT [ LIT ]) << LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) + IDENT) + (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) }))) (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 IDENT < IDENT) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = 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 *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != (subscript_expression IDENT [ LIT ])) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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) )))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) }) (else_clause else (compound_statement { (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 (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( ))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) + LIT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (call_expression IDENT (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT - IDENT)) )))) , (binary_expression IDENT - IDENT) ))))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (return_statement return IDENT ;) })))
(function_definition "ulonglong gold::Output_segment::set_section_list_addresses\n                    (Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,\n                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)\n\n{\n  byte bVar1;\n  bool bVar2;\n  longlong lVar3;\n  undefined *puVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined4 uVar11;\n  uint uVar12;\n  undefined4 *puVar13;\n  undefined4 extraout_v1;\n  uint uVar14;\n  int *piVar15;\n  undefined *puVar16;\n  undefined3 in_register_00000014;\n  int iVar17;\n  uint uVar18;\n  uint uVar19;\n  undefined4 uVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  uint uVar24;\n  uint uVar25;\n  uint uVar26;\n  uint uVar27;\n  undefined4 uVar28;\n  int *piVar29;\n  int iVar30;\n  uint uVar31;\n  ulonglong uVar32;\n  ulonglong uVar33;\n  undefined8 uVar34;\n  char *in_stack_00000024;\n  uint local_78;\n  uint local_54;\n  \n  puVar4 = PTR_s_alize_xindex_004323b4;\n  iVar17 = CONCAT31(in_register_00000014,param_2);\n  uVar14 = (uint)*param_6;\n  piVar23 = *(int **)param_5;\n  uVar12 = *(uint *)param_6;\n  uVar27 = *param_7;\n  uVar24 = param_7[1];\n  local_78 = uVar12;\n  local_54 = uVar14;\n  if (piVar23 != *(int **)((int)param_5 + 4)) {\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }\n  *(uint *)param_6 = local_78;\n  *(uint *)((int)param_6 + 4) = local_54;\n  *param_7 = uVar27;\n  param_7[1] = uVar24;\n  return param_4;\n}" (type_identifier "ulonglong") (ERROR "gold::Output_segment::" (identifier "gold") (: ":") (: ":") (identifier "Output_segment") (: ":") (: ":")) (function_declarator "set_section_list_addresses\n                    (Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,\n                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)" (identifier "set_section_list_addresses") (parameter_list "(Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,\n                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)" (( "(") (parameter_declaration "Layout *param_1" (type_identifier "Layout") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "bool param_2" (primitive_type "bool") (identifier "param_2")) (, ",") (parameter_declaration "vector *param_3" (type_identifier "vector") (pointer_declarator "*param_3" (* "*") (identifier "param_3"))) (, ",") (parameter_declaration "ulonglong param_4" (type_identifier "ulonglong") (identifier "param_4")) (, ",") (parameter_declaration "longlong *param_5" (type_identifier "longlong") (pointer_declarator "*param_5" (* "*") (identifier "param_5"))) (, ",") (parameter_declaration "longlong *param_6" (type_identifier "longlong") (pointer_declarator "*param_6" (* "*") (identifier "param_6"))) (, ",") (parameter_declaration "uint *param_7" (type_identifier "uint") (pointer_declarator "*param_7" (* "*") (identifier "param_7"))) (, ",") (parameter_declaration "bool *param_8" (primitive_type "bool") (pointer_declarator "*param_8" (* "*") (identifier "param_8"))) () ")"))) (compound_statement "{\n  byte bVar1;\n  bool bVar2;\n  longlong lVar3;\n  undefined *puVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined4 uVar11;\n  uint uVar12;\n  undefined4 *puVar13;\n  undefined4 extraout_v1;\n  uint uVar14;\n  int *piVar15;\n  undefined *puVar16;\n  undefined3 in_register_00000014;\n  int iVar17;\n  uint uVar18;\n  uint uVar19;\n  undefined4 uVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  uint uVar24;\n  uint uVar25;\n  uint uVar26;\n  uint uVar27;\n  undefined4 uVar28;\n  int *piVar29;\n  int iVar30;\n  uint uVar31;\n  ulonglong uVar32;\n  ulonglong uVar33;\n  undefined8 uVar34;\n  char *in_stack_00000024;\n  uint local_78;\n  uint local_54;\n  \n  puVar4 = PTR_s_alize_xindex_004323b4;\n  iVar17 = CONCAT31(in_register_00000014,param_2);\n  uVar14 = (uint)*param_6;\n  piVar23 = *(int **)param_5;\n  uVar12 = *(uint *)param_6;\n  uVar27 = *param_7;\n  uVar24 = param_7[1];\n  local_78 = uVar12;\n  local_54 = uVar14;\n  if (piVar23 != *(int **)((int)param_5 + 4)) {\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }\n  *(uint *)param_6 = local_78;\n  *(uint *)((int)param_6 + 4) = local_54;\n  *param_7 = uVar27;\n  param_7[1] = uVar24;\n  return param_4;\n}" ({ "{") (declaration "byte bVar1;" (type_identifier "byte") (identifier "bVar1") (; ";")) (declaration "bool bVar2;" (primitive_type "bool") (identifier "bVar2") (; ";")) (declaration "longlong lVar3;" (type_identifier "longlong") (identifier "lVar3") (; ";")) (declaration "undefined *puVar4;" (type_identifier "undefined") (pointer_declarator "*puVar4" (* "*") (identifier "puVar4")) (; ";")) (declaration "undefined *puVar5;" (type_identifier "undefined") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "undefined *puVar6;" (type_identifier "undefined") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "undefined *puVar7;" (type_identifier "undefined") (pointer_declarator "*puVar7" (* "*") (identifier "puVar7")) (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "int iVar9;" (primitive_type "int") (identifier "iVar9") (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "undefined4 uVar11;" (type_identifier "undefined4") (identifier "uVar11") (; ";")) (declaration "uint uVar12;" (type_identifier "uint") (identifier "uVar12") (; ";")) (declaration "undefined4 *puVar13;" (type_identifier "undefined4") (pointer_declarator "*puVar13" (* "*") (identifier "puVar13")) (; ";")) (declaration "undefined4 extraout_v1;" (type_identifier "undefined4") (identifier "extraout_v1") (; ";")) (declaration "uint uVar14;" (type_identifier "uint") (identifier "uVar14") (; ";")) (declaration "int *piVar15;" (primitive_type "int") (pointer_declarator "*piVar15" (* "*") (identifier "piVar15")) (; ";")) (declaration "undefined *puVar16;" (type_identifier "undefined") (pointer_declarator "*puVar16" (* "*") (identifier "puVar16")) (; ";")) (declaration "undefined3 in_register_00000014;" (type_identifier "undefined3") (identifier "in_register_00000014") (; ";")) (declaration "int iVar17;" (primitive_type "int") (identifier "iVar17") (; ";")) (declaration "uint uVar18;" (type_identifier "uint") (identifier "uVar18") (; ";")) (declaration "uint uVar19;" (type_identifier "uint") (identifier "uVar19") (; ";")) (declaration "undefined4 uVar20;" (type_identifier "undefined4") (identifier "uVar20") (; ";")) (declaration "uint uVar21;" (type_identifier "uint") (identifier "uVar21") (; ";")) (declaration "uint uVar22;" (type_identifier "uint") (identifier "uVar22") (; ";")) (declaration "int *piVar23;" (primitive_type "int") (pointer_declarator "*piVar23" (* "*") (identifier "piVar23")) (; ";")) (declaration "uint uVar24;" (type_identifier "uint") (identifier "uVar24") (; ";")) (declaration "uint uVar25;" (type_identifier "uint") (identifier "uVar25") (; ";")) (declaration "uint uVar26;" (type_identifier "uint") (identifier "uVar26") (; ";")) (declaration "uint uVar27;" (type_identifier "uint") (identifier "uVar27") (; ";")) (declaration "undefined4 uVar28;" (type_identifier "undefined4") (identifier "uVar28") (; ";")) (declaration "int *piVar29;" (primitive_type "int") (pointer_declarator "*piVar29" (* "*") (identifier "piVar29")) (; ";")) (declaration "int iVar30;" (primitive_type "int") (identifier "iVar30") (; ";")) (declaration "uint uVar31;" (type_identifier "uint") (identifier "uVar31") (; ";")) (declaration "ulonglong uVar32;" (type_identifier "ulonglong") (identifier "uVar32") (; ";")) (declaration "ulonglong uVar33;" (type_identifier "ulonglong") (identifier "uVar33") (; ";")) (declaration "undefined8 uVar34;" (type_identifier "undefined8") (identifier "uVar34") (; ";")) (declaration "char *in_stack_00000024;" (primitive_type "char") (pointer_declarator "*in_stack_00000024" (* "*") (identifier "in_stack_00000024")) (; ";")) (declaration "uint local_78;" (type_identifier "uint") (identifier "local_78") (; ";")) (declaration "uint local_54;" (type_identifier "uint") (identifier "local_54") (; ";")) (expression_statement "puVar4 = PTR_s_alize_xindex_004323b4;" (assignment_expression "puVar4 = PTR_s_alize_xindex_004323b4" (identifier "puVar4") (= "=") (identifier "PTR_s_alize_xindex_004323b4")) (; ";")) (expression_statement "iVar17 = CONCAT31(in_register_00000014,param_2);" (assignment_expression "iVar17 = CONCAT31(in_register_00000014,param_2)" (identifier "iVar17") (= "=") (call_expression "CONCAT31(in_register_00000014,param_2)" (identifier "CONCAT31") (argument_list "(in_register_00000014,param_2)" (( "(") (identifier "in_register_00000014") (, ",") (identifier "param_2") () ")")))) (; ";")) (expression_statement "uVar14 = (uint)*param_6;" (assignment_expression "uVar14 = (uint)*param_6" (identifier "uVar14") (= "=") (binary_expression "(uint)*param_6" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_6"))) (; ";")) (expression_statement "piVar23 = *(int **)param_5;" (assignment_expression "piVar23 = *(int **)param_5" (identifier "piVar23") (= "=") (pointer_expression "*(int **)param_5" (* "*") (cast_expression "(int **)param_5" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "param_5")))) (; ";")) (expression_statement "uVar12 = *(uint *)param_6;" (assignment_expression "uVar12 = *(uint *)param_6" (identifier "uVar12") (= "=") (pointer_expression "*(uint *)param_6" (* "*") (cast_expression "(uint *)param_6" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_6")))) (; ";")) (expression_statement "uVar27 = *param_7;" (assignment_expression "uVar27 = *param_7" (identifier "uVar27") (= "=") (pointer_expression "*param_7" (* "*") (identifier "param_7"))) (; ";")) (expression_statement "uVar24 = param_7[1];" (assignment_expression "uVar24 = param_7[1]" (identifier "uVar24") (= "=") (subscript_expression "param_7[1]" (identifier "param_7") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "local_78 = uVar12;" (assignment_expression "local_78 = uVar12" (identifier "local_78") (= "=") (identifier "uVar12")) (; ";")) (expression_statement "local_54 = uVar14;" (assignment_expression "local_54 = uVar14" (identifier "local_54") (= "=") (identifier "uVar14")) (; ";")) (if_statement "if (piVar23 != *(int **)((int)param_5 + 4)) {\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }" (if "if") (parenthesized_expression "(piVar23 != *(int **)((int)param_5 + 4))" (( "(") (binary_expression "piVar23 != *(int **)((int)param_5 + 4)" (identifier "piVar23") (!= "!=") (pointer_expression "*(int **)((int)param_5 + 4)" (* "*") (cast_expression "(int **)((int)param_5 + 4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)param_5 + 4)" (( "(") (binary_expression "(int)param_5 + 4" (cast_expression "(int)param_5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_5")) (+ "+") (number_literal "4")) () ")"))))) () ")")) (compound_statement "{\n    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;\n    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;\n    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;\n    uVar21 = uVar12;\n    uVar22 = uVar14;\n    do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);\n    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);\n  }" ({ "{") (expression_statement "puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;" (assignment_expression "puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4" (identifier "puVar5") (= "=") (binary_expression "PTR_s_alize_xindex_004323b4 + 0x5ae4" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "0x5ae4"))) (; ";")) (expression_statement "puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;" (assignment_expression "puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48" (identifier "puVar6") (= "=") (binary_expression "PTR_s_alize_xindex_004323b4 + 0x5a48" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "0x5a48"))) (; ";")) (expression_statement "puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;" (assignment_expression "puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec" (identifier "puVar7") (= "=") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x29ec" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x29ec"))) (; ";")) (expression_statement "uVar21 = uVar12;" (assignment_expression "uVar21 = uVar12" (identifier "uVar21") (= "=") (identifier "uVar12")) (; ";")) (expression_statement "uVar22 = uVar14;" (assignment_expression "uVar22 = uVar14" (identifier "uVar22") (= "=") (identifier "uVar14")) (; ";")) (do_statement "do {\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    } while (*(int **)((int)param_5 + 4) != piVar23);" (do "do") (compound_statement "{\n      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);\n      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();\n      if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }\n      piVar15 = (int *)PTR_parameters_00432be0;\n      uVar25 = uVar27;\n      if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }\nLAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);\n      if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }\n      uVar27 = uVar25;\n      if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }\n      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }\n      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);\n      if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }\n      piVar23 = piVar23 + 1;\n      uVar22 = uVar25;\n    }" ({ "{") (expression_statement "iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);" (assignment_expression "iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x1c))" (( "(") (pointer_expression "**(code **)(*(int *)*piVar23 + 0x1c)" (* "*") (pointer_expression "*(code **)(*(int *)*piVar23 + 0x1c)" (* "*") (cast_expression "(code **)(*(int *)*piVar23 + 0x1c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)*piVar23 + 0x1c)" (( "(") (binary_expression "*(int *)*piVar23 + 0x1c" (pointer_expression "*(int *)*piVar23" (* "*") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (+ "+") (number_literal "0x1c")) () ")"))))) () ")")) (argument_list "((int *)*piVar23,8)" (( "(") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23"))) (, ",") (number_literal "8") () ")")))) (; ";")) (expression_statement "iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();" (assignment_expression "iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))()" (identifier "iVar9") (= "=") (call_expression "(**(code **)(*(int *)*piVar23 + 0x20))()" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x20))" (( "(") (pointer_expression "**(code **)(*(int *)*piVar23 + 0x20)" (* "*") (pointer_expression "*(code **)(*(int *)*piVar23 + 0x20)" (* "*") (cast_expression "(code **)(*(int *)*piVar23 + 0x20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)*piVar23 + 0x20)" (( "(") (binary_expression "*(int *)*piVar23 + 0x20" (pointer_expression "*(int *)*piVar23" (* "*") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (+ "+") (number_literal "0x20")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (param_3 != (vector *)0x0) {\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }" (if "if") (parenthesized_expression "(param_3 != (vector *)0x0)" (( "(") (binary_expression "param_3 != (vector *)0x0" (identifier "param_3") (!= "!=") (cast_expression "(vector *)0x0" (( "(") (type_descriptor "vector *" (type_identifier "vector") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        piVar15 = (int *)*piVar23;\n        bVar1 = *(byte *)(piVar15 + 8);\n        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;\n        if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }\n        (**(code **)(*piVar15 + 0x3c))();\n      }" ({ "{") (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" (identifier "piVar15") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (expression_statement "bVar1 = *(byte *)(piVar15 + 8);" (assignment_expression "bVar1 = *(byte *)(piVar15 + 8)" (identifier "bVar1") (= "=") (pointer_expression "*(byte *)(piVar15 + 8)" (* "*") (cast_expression "(byte *)(piVar15 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar15 + 8)" (( "(") (binary_expression "piVar15 + 8" (identifier "piVar15") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "*(byte *)(piVar15 + 8) = bVar1 & 0x5f;" (assignment_expression "*(byte *)(piVar15 + 8) = bVar1 & 0x5f" (pointer_expression "*(byte *)(piVar15 + 8)" (* "*") (cast_expression "(byte *)(piVar15 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar15 + 8)" (( "(") (binary_expression "piVar15 + 8" (identifier "piVar15") (+ "+") (number_literal "8")) () ")")))) (= "=") (binary_expression "bVar1 & 0x5f" (identifier "bVar1") (& "&") (number_literal "0x5f"))) (; ";")) (if_statement "if (-1 < piVar15[8] << 3) {\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }" (if "if") (parenthesized_expression "(-1 < piVar15[8] << 3)" (( "(") (binary_expression "-1 < piVar15[8] << 3" (number_literal "-1") (< "<") (binary_expression "piVar15[8] << 3" (subscript_expression "piVar15[8]" (identifier "piVar15") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "3"))) () ")")) (compound_statement "{\n          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;\n        }" ({ "{") (expression_statement "*(byte *)(piVar15 + 8) = bVar1 & 0x1f;" (assignment_expression "*(byte *)(piVar15 + 8) = bVar1 & 0x1f" (pointer_expression "*(byte *)(piVar15 + 8)" (* "*") (cast_expression "(byte *)(piVar15 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar15 + 8)" (( "(") (binary_expression "piVar15 + 8" (identifier "piVar15") (+ "+") (number_literal "8")) () ")")))) (= "=") (binary_expression "bVar1 & 0x1f" (identifier "bVar1") (& "&") (number_literal "0x1f"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(*piVar15 + 0x3c))();" (call_expression "(**(code **)(*piVar15 + 0x3c))()" (parenthesized_expression "(**(code **)(*piVar15 + 0x3c))" (( "(") (pointer_expression "**(code **)(*piVar15 + 0x3c)" (* "*") (pointer_expression "*(code **)(*piVar15 + 0x3c)" (* "*") (cast_expression "(code **)(*piVar15 + 0x3c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar15 + 0x3c)" (( "(") (binary_expression "*piVar15 + 0x3c" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (+ "+") (number_literal "0x3c")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "piVar15 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar15 = (int *)PTR_parameters_00432be0" (identifier "piVar15") (= "=") (cast_expression "(int *)PTR_parameters_00432be0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_00432be0"))) (; ";")) (expression_statement "uVar25 = uVar27;" (assignment_expression "uVar25 = uVar27" (identifier "uVar25") (= "=") (identifier "uVar27")) (; ";")) (if_statement "if (((int *)*piVar23)[8] < 0) {\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }\n      else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }" (if "if") (parenthesized_expression "(((int *)*piVar23)[8] < 0)" (( "(") (binary_expression "((int *)*piVar23)[8] < 0" (subscript_expression "((int *)*piVar23)[8]" (parenthesized_expression "((int *)*piVar23)" (( "(") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23"))) () ")")) ([ "[") (number_literal "8") (] "]")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);\n        if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }\n      }" ({ "{") (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0)" (identifier "iVar10") (= "=") (call_expression "(*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" (( "(") (pointer_expression "*(code *)PTR_incremental_update_00432eb0" (* "*") (cast_expression "(code *)PTR_incremental_update_00432eb0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_incremental_update_00432eb0"))) () ")")) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" (( "(") (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" (* "*") (cast_expression "(undefined4 *)PTR_parameters_00432be0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_00432be0"))) () ")")))) (; ";")) (if_statement "if (iVar10 == 0) {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }\n        else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }\n          uVar26 = piVar29[2];\n          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);\n          uVar18 = (uint)lVar3;\n          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);\n          uVar19 = piVar29[3];\n          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }\n          if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar24;\n          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;\n          if (piVar29[8] << 1 < 0) goto LAB_0018736c;\n          (**(code **)(*piVar29 + 0x38))(piVar29);\n          iVar10 = piVar29[8];\n          uVar26 = uVar24;\njoined_r0x001878b8:\n          uVar24 = uVar26;\n          if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }\n        }" ({ "{") (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" (identifier "piVar29") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (if_statement "if (-1 < piVar29[8]) {\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }" (if "if") (parenthesized_expression "(-1 < piVar29[8])" (( "(") (binary_expression "-1 < piVar29[8]" (number_literal "-1") (< "<") (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]"))) () ")")) (compound_statement "{\nLAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);\n            return uVar32;\n          }" ({ "{") (labeled_statement "LAB_00187bd4:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);" (statement_identifier "LAB_00187bd4") (: ":") (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850)" (identifier "uVar32") (= "=") (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850)" (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,0xc5,\n                                PTR_s_alize_xindex_004323b4 + 0x7850)" (( "(") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x4fe0")) (, ",") (number_literal "0xc5") (, ",") (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7850" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "0x7850")) () ")")))) (; ";"))) (return_statement "return uVar32;" (return "return") (identifier "uVar32") (; ";")) (} "}"))) (expression_statement "uVar26 = piVar29[2];" (assignment_expression "uVar26 = piVar29[2]" (identifier "uVar26") (= "=") (subscript_expression "piVar29[2]" (identifier "piVar29") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14);" (assignment_expression "lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" (identifier "lVar3") (= "=") (binary_expression "param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" (identifier "param_4") (+ "+") (call_expression "CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" (identifier "CONCAT44") (argument_list "((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                     uVar22 - uVar14)" (( "(") (binary_expression "(uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uVar21 - uVar12)" (( "(") (binary_expression "uVar21 - uVar12" (identifier "uVar21") (- "-") (identifier "uVar12")) () ")")) (- "-") (call_expression "(uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar22 < uVar22 - uVar14)" (( "(") (binary_expression "uVar22 < uVar22 - uVar14" (identifier "uVar22") (< "<") (binary_expression "uVar22 - uVar14" (identifier "uVar22") (- "-") (identifier "uVar14"))) () ")")))) (, ",") (binary_expression "uVar22 - uVar14" (identifier "uVar22") (- "-") (identifier "uVar14")) () ")"))))) (; ";")) (expression_statement "uVar18 = (uint)lVar3;" (assignment_expression "uVar18 = (uint)lVar3" (identifier "uVar18") (= "=") (cast_expression "(uint)lVar3" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar3"))) (; ";")) (expression_statement "uVar31 = (uint)((ulonglong)lVar3 >> 0x20);" (assignment_expression "uVar31 = (uint)((ulonglong)lVar3 >> 0x20)" (identifier "uVar31") (= "=") (call_expression "(uint)((ulonglong)lVar3 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)lVar3 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar3 >> 0x20" (cast_expression "(ulonglong)lVar3" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar3")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "uVar19 = piVar29[3];" (assignment_expression "uVar19 = piVar29[3]" (identifier "uVar19") (= "=") (subscript_expression "piVar29[3]" (identifier "piVar29") ([ "[") (number_literal "3") (] "]"))) (; ";")) (if_statement "if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }\n          else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" (if "if") (parenthesized_expression "((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18))))" (( "(") (binary_expression "(uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))" (parenthesized_expression "(uVar26 < uVar31)" (( "(") (binary_expression "uVar26 < uVar31" (identifier "uVar26") (< "<") (identifier "uVar31")) () ")")) (|| "||") (parenthesized_expression "((uVar31 == uVar26 && (uVar19 < uVar18)))" (( "(") (parenthesized_expression "(uVar31 == uVar26 && (uVar19 < uVar18))" (( "(") (binary_expression "uVar31 == uVar26 && (uVar19 < uVar18)" (binary_expression "uVar31 == uVar26" (identifier "uVar31") (== "==") (identifier "uVar26")) (&& "&&") (parenthesized_expression "(uVar19 < uVar18)" (( "(") (binary_expression "uVar19 < uVar18" (identifier "uVar19") (< "<") (identifier "uVar18")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n            uVar28 = 0x1215;\n            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);\n            iVar30 = *piVar23;\n            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;\n            uVar20 = *(undefined4 *)(iVar30 + 0xc);\n            uVar28 = *(undefined4 *)(iVar30 + 8);\n            if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }\n          }" ({ "{") (expression_statement "uVar28 = 0x1215;" (assignment_expression "uVar28 = 0x1215" (identifier "uVar28") (= "=") (number_literal "0x1215")) (; ";")) (if_statement "if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;" (if "if") (parenthesized_expression "(*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0')" (( "(") (binary_expression "*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0'" (pointer_expression "*(char *)(*(int *)(iVar17 + 4) + 0xac)" (* "*") (cast_expression "(char *)(*(int *)(iVar17 + 4) + 0xac)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar17 + 4) + 0xac)" (( "(") (binary_expression "*(int *)(iVar17 + 4) + 0xac" (pointer_expression "*(int *)(iVar17 + 4)" (* "*") (cast_expression "(int *)(iVar17 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar17 + 4)" (( "(") (binary_expression "iVar17 + 4" (identifier "iVar17") (+ "+") (number_literal "4")) () ")")))) (+ "+") (number_literal "0xac")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00187b08;" (goto "goto") (statement_identifier "LAB_00187b08") (; ";"))) (expression_statement "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);" (assignment_expression "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215)" (identifier "iVar10") (= "=") (call_expression "(**(code **)(*piVar29 + 0x24))(piVar29,0x1215)" (parenthesized_expression "(**(code **)(*piVar29 + 0x24))" (( "(") (pointer_expression "**(code **)(*piVar29 + 0x24)" (* "*") (pointer_expression "*(code **)(*piVar29 + 0x24)" (* "*") (cast_expression "(code **)(*piVar29 + 0x24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar29 + 0x24)" (( "(") (binary_expression "*piVar29 + 0x24" (pointer_expression "*piVar29" (* "*") (identifier "piVar29")) (+ "+") (number_literal "0x24")) () ")"))))) () ")")) (argument_list "(piVar29,0x1215)" (( "(") (identifier "piVar29") (, ",") (number_literal "0x1215") () ")")))) (; ";")) (expression_statement "iVar30 = *piVar23;" (assignment_expression "iVar30 = *piVar23" (identifier "iVar30") (= "=") (pointer_expression "*piVar23" (* "*") (identifier "piVar23"))) (; ";")) (if_statement "if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;" (if "if") (parenthesized_expression "(-1 < *(int *)(iVar30 + 0x20))" (( "(") (binary_expression "-1 < *(int *)(iVar30 + 0x20)" (number_literal "-1") (< "<") (pointer_expression "*(int *)(iVar30 + 0x20)" (* "*") (cast_expression "(int *)(iVar30 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar30 + 0x20)" (( "(") (binary_expression "iVar30 + 0x20" (identifier "iVar30") (+ "+") (number_literal "0x20")) () ")"))))) () ")")) (goto_statement "goto LAB_00187bd4;" (goto "goto") (statement_identifier "LAB_00187bd4") (; ";"))) (expression_statement "uVar20 = *(undefined4 *)(iVar30 + 0xc);" (assignment_expression "uVar20 = *(undefined4 *)(iVar30 + 0xc)" (identifier "uVar20") (= "=") (pointer_expression "*(undefined4 *)(iVar30 + 0xc)" (* "*") (cast_expression "(undefined4 *)(iVar30 + 0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar30 + 0xc)" (( "(") (binary_expression "iVar30 + 0xc" (identifier "iVar30") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (expression_statement "uVar28 = *(undefined4 *)(iVar30 + 8);" (assignment_expression "uVar28 = *(undefined4 *)(iVar30 + 8)" (identifier "uVar28") (= "=") (pointer_expression "*(undefined4 *)(iVar30 + 8)" (* "*") (cast_expression "(undefined4 *)(iVar30 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar30 + 8)" (( "(") (binary_expression "iVar30 + 8" (identifier "iVar30") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (iVar10 == 0) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }\n            else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);\n              (*(code *)PTR_gold_error_00432d84)(uVar28);\n              piVar29 = (int *)*piVar23;\n            }" ({ "{") (expression_statement "uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);" (assignment_expression "uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8)" (identifier "uVar28") (= "=") (call_expression "(*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" (( "(") (pointer_expression "*(code *)PTR_gettext_00436818" (* "*") (cast_expression "(code *)PTR_gettext_00436818" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_gettext_00436818"))) () ")")) (argument_list "(puVar4 + 0x5aa8)" (( "(") (binary_expression "puVar4 + 0x5aa8" (identifier "puVar4") (+ "+") (number_literal "0x5aa8")) () ")")))) (; ";")) (expression_statement "(*(code *)PTR_gold_error_00432d84)(uVar28);" (call_expression "(*(code *)PTR_gold_error_00432d84)(uVar28)" (parenthesized_expression "(*(code *)PTR_gold_error_00432d84)" (( "(") (pointer_expression "*(code *)PTR_gold_error_00432d84" (* "*") (cast_expression "(code *)PTR_gold_error_00432d84" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_gold_error_00432d84"))) () ")")) (argument_list "(uVar28)" (( "(") (identifier "uVar28") () ")"))) (; ";")) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" (identifier "piVar29") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (} "}")) (else_clause "else {\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }" (else "else") (compound_statement "{\n              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);\n              (*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);\n              piVar29 = (int *)*piVar23;\n            }" ({ "{") (expression_statement "uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);" (assignment_expression "uVar11 = (*(code *)PTR_gettext_00436818)(puVar5)" (identifier "uVar11") (= "=") (call_expression "(*(code *)PTR_gettext_00436818)(puVar5)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" (( "(") (pointer_expression "*(code *)PTR_gettext_00436818" (* "*") (cast_expression "(code *)PTR_gettext_00436818" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_gettext_00436818"))) () ")")) (argument_list "(puVar5)" (( "(") (identifier "puVar5") () ")")))) (; ";")) (expression_statement "(*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);" (call_expression "(*(code *)PTR_gold_error_00432d84)\n                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20)" (parenthesized_expression "(*(code *)PTR_gold_error_00432d84)" (( "(") (pointer_expression "*(code *)PTR_gold_error_00432d84" (* "*") (cast_expression "(code *)PTR_gold_error_00432d84" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_gold_error_00432d84"))) () ")")) (argument_list "(uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20)" (( "(") (identifier "uVar11") (, ",") (pointer_expression "*(undefined4 *)(iVar10 + 0x24)" (* "*") (cast_expression "(undefined4 *)(iVar10 + 0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + 0x24)" (( "(") (binary_expression "iVar10 + 0x24" (identifier "iVar10") (+ "+") (number_literal "0x24")) () ")")))) (, ",") (identifier "uVar31") (, ",") (identifier "uVar18") (, ",") (identifier "uVar28") (, ",") (identifier "uVar20") () ")"))) (; ";")) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" (identifier "piVar29") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (} "}")))) (} "}")) (else_clause "else if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" (else "else") (if_statement "if (iVar8 == 0) {\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }\n          else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            uVar24 = uVar22;\n            uVar25 = uVar21;\n          }" ({ "{") (if_statement "if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }" (if "if") (parenthesized_expression "(((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22))))" (( "(") (binary_expression "((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))" (parenthesized_expression "((int)uVar27 < (int)uVar21)" (( "(") (binary_expression "(int)uVar27 < (int)uVar21" (cast_expression "(int)uVar27" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar27")) (< "<") (cast_expression "(int)uVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar21"))) () ")")) (|| "||") (parenthesized_expression "((uVar21 == uVar27 && (uVar24 < uVar22)))" (( "(") (parenthesized_expression "(uVar21 == uVar27 && (uVar24 < uVar22))" (( "(") (binary_expression "uVar21 == uVar27 && (uVar24 < uVar22)" (binary_expression "uVar21 == uVar27" (identifier "uVar21") (== "==") (identifier "uVar27")) (&& "&&") (parenthesized_expression "(uVar24 < uVar22)" (( "(") (binary_expression "uVar24 < uVar22" (identifier "uVar24") (< "<") (identifier "uVar22")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);\n              (*(code *)PTR_gold_warning_0043245c)(uVar28);\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8]) goto LAB_00187bd4;\n              uVar26 = piVar29[2];\n              uVar19 = piVar29[3];\n            }" ({ "{") (expression_statement "uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);" (assignment_expression "uVar28 = (*(code *)PTR_gettext_00436818)(puVar6)" (identifier "uVar28") (= "=") (call_expression "(*(code *)PTR_gettext_00436818)(puVar6)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" (( "(") (pointer_expression "*(code *)PTR_gettext_00436818" (* "*") (cast_expression "(code *)PTR_gettext_00436818" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_gettext_00436818"))) () ")")) (argument_list "(puVar6)" (( "(") (identifier "puVar6") () ")")))) (; ";")) (expression_statement "(*(code *)PTR_gold_warning_0043245c)(uVar28);" (call_expression "(*(code *)PTR_gold_warning_0043245c)(uVar28)" (parenthesized_expression "(*(code *)PTR_gold_warning_0043245c)" (( "(") (pointer_expression "*(code *)PTR_gold_warning_0043245c" (* "*") (cast_expression "(code *)PTR_gold_warning_0043245c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_gold_warning_0043245c"))) () ")")) (argument_list "(uVar28)" (( "(") (identifier "uVar28") () ")"))) (; ";")) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" (identifier "piVar29") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (if_statement "if (-1 < piVar29[8]) goto LAB_00187bd4;" (if "if") (parenthesized_expression "(-1 < piVar29[8])" (( "(") (binary_expression "-1 < piVar29[8]" (number_literal "-1") (< "<") (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]"))) () ")")) (goto_statement "goto LAB_00187bd4;" (goto "goto") (statement_identifier "LAB_00187bd4") (; ";"))) (expression_statement "uVar26 = piVar29[2];" (assignment_expression "uVar26 = piVar29[2]" (identifier "uVar26") (= "=") (subscript_expression "piVar29[2]" (identifier "piVar29") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "uVar19 = piVar29[3];" (assignment_expression "uVar19 = piVar29[3]" (identifier "uVar19") (= "=") (subscript_expression "piVar29[3]" (identifier "piVar29") ([ "[") (number_literal "3") (] "]"))) (; ";")) (} "}"))) (expression_statement "uVar18 = uVar22 - uVar18;" (assignment_expression "uVar18 = uVar22 - uVar18" (identifier "uVar18") (= "=") (binary_expression "uVar22 - uVar18" (identifier "uVar22") (- "-") (identifier "uVar18"))) (; ";")) (expression_statement "bVar2 = uVar22 < uVar18;" (assignment_expression "bVar2 = uVar22 < uVar18" (identifier "bVar2") (= "=") (binary_expression "uVar22 < uVar18" (identifier "uVar22") (< "<") (identifier "uVar18"))) (; ";")) (expression_statement "uVar22 = uVar18 + uVar19;" (assignment_expression "uVar22 = uVar18 + uVar19" (identifier "uVar22") (= "=") (binary_expression "uVar18 + uVar19" (identifier "uVar18") (+ "+") (identifier "uVar19"))) (; ";")) (expression_statement "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;" (assignment_expression "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" (identifier "uVar21") (= "=") (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2)" (call_expression "(uint)(uVar22 < uVar18)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar22 < uVar18)" (( "(") (binary_expression "uVar22 < uVar18" (identifier "uVar22") (< "<") (identifier "uVar18")) () ")"))) (+ "+") (parenthesized_expression "((uVar21 - uVar31) - (uint)bVar2)" (( "(") (binary_expression "(uVar21 - uVar31) - (uint)bVar2" (parenthesized_expression "(uVar21 - uVar31)" (( "(") (binary_expression "uVar21 - uVar31" (identifier "uVar21") (- "-") (identifier "uVar31")) () ")")) (- "-") (cast_expression "(uint)bVar2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar2"))) () ")"))) (+ "+") (identifier "uVar26"))) (; ";")) (expression_statement "uVar24 = uVar22;" (assignment_expression "uVar24 = uVar22" (identifier "uVar24") (= "=") (identifier "uVar22")) (; ";")) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" (identifier "uVar25") (= "=") (identifier "uVar21")) (; ";")) (} "}")) (else_clause "else {\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" (else "else") (compound_statement "{\n            uVar18 = uVar22 - uVar18;\n            bVar2 = uVar22 < uVar18;\n            uVar22 = uVar18 + uVar19;\n            if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }\n            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;\n            if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }\n          }" ({ "{") (expression_statement "uVar18 = uVar22 - uVar18;" (assignment_expression "uVar18 = uVar22 - uVar18" (identifier "uVar18") (= "=") (binary_expression "uVar22 - uVar18" (identifier "uVar22") (- "-") (identifier "uVar18"))) (; ";")) (expression_statement "bVar2 = uVar22 < uVar18;" (assignment_expression "bVar2 = uVar22 < uVar18" (identifier "bVar2") (= "=") (binary_expression "uVar22 < uVar18" (identifier "uVar22") (< "<") (identifier "uVar18"))) (; ";")) (expression_statement "uVar22 = uVar18 + uVar19;" (assignment_expression "uVar22 = uVar18 + uVar19" (identifier "uVar22") (= "=") (binary_expression "uVar18 + uVar19" (identifier "uVar18") (+ "+") (identifier "uVar19"))) (; ";")) (if_statement "if (iVar9 != 0) {\n              uVar24 = uVar22;\n            }" (if "if") (parenthesized_expression "(iVar9 != 0)" (( "(") (binary_expression "iVar9 != 0" (identifier "iVar9") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              uVar24 = uVar22;\n            }" ({ "{") (expression_statement "uVar24 = uVar22;" (assignment_expression "uVar24 = uVar22" (identifier "uVar24") (= "=") (identifier "uVar22")) (; ";")) (} "}"))) (expression_statement "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;" (assignment_expression "uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" (identifier "uVar21") (= "=") (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26" (binary_expression "(uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2)" (call_expression "(uint)(uVar22 < uVar18)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar22 < uVar18)" (( "(") (binary_expression "uVar22 < uVar18" (identifier "uVar22") (< "<") (identifier "uVar18")) () ")"))) (+ "+") (parenthesized_expression "((uVar21 - uVar31) - (uint)bVar2)" (( "(") (binary_expression "(uVar21 - uVar31) - (uint)bVar2" (parenthesized_expression "(uVar21 - uVar31)" (( "(") (binary_expression "uVar21 - uVar31" (identifier "uVar21") (- "-") (identifier "uVar31")) () ")")) (- "-") (cast_expression "(uint)bVar2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar2"))) () ")"))) (+ "+") (identifier "uVar26"))) (; ";")) (if_statement "if (iVar9 != 0) {\n              uVar25 = uVar21;\n            }" (if "if") (parenthesized_expression "(iVar9 != 0)" (( "(") (binary_expression "iVar9 != 0" (identifier "iVar9") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              uVar25 = uVar21;\n            }" ({ "{") (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" (identifier "uVar25") (= "=") (identifier "uVar21")) (; ";")) (} "}"))) (} "}")))))) (if_statement "if (piVar29[8] << 2 < 0) goto LAB_00187b94;" (if "if") (parenthesized_expression "(piVar29[8] << 2 < 0)" (( "(") (binary_expression "piVar29[8] << 2 < 0" (binary_expression "piVar29[8] << 2" (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "2")) (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00187b94;" (goto "goto") (statement_identifier "LAB_00187b94") (; ";"))) (expression_statement "piVar29[6] = uVar25;" (assignment_expression "piVar29[6] = uVar25" (subscript_expression "piVar29[6]" (identifier "piVar29") ([ "[") (number_literal "6") (] "]")) (= "=") (identifier "uVar25")) (; ";")) (expression_statement "piVar29[7] = uVar24;" (assignment_expression "piVar29[7] = uVar24" (subscript_expression "piVar29[7]" (identifier "piVar29") ([ "[") (number_literal "7") (] "]")) (= "=") (identifier "uVar24")) (; ";")) (expression_statement "*(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;" (assignment_expression "*(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20" (pointer_expression "*(byte *)(piVar29 + 8)" (* "*") (cast_expression "(byte *)(piVar29 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar29 + 8)" (( "(") (binary_expression "piVar29 + 8" (identifier "piVar29") (+ "+") (number_literal "8")) () ")")))) (= "=") (binary_expression "*(byte *)(piVar29 + 8) & 0xdf | 0x20" (binary_expression "*(byte *)(piVar29 + 8) & 0xdf" (pointer_expression "*(byte *)(piVar29 + 8)" (* "*") (cast_expression "(byte *)(piVar29 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar29 + 8)" (( "(") (binary_expression "piVar29 + 8" (identifier "piVar29") (+ "+") (number_literal "8")) () ")")))) (& "&") (number_literal "0xdf")) (| "|") (number_literal "0x20"))) (; ";")) (if_statement "if (piVar29[8] << 1 < 0) goto LAB_0018736c;" (if "if") (parenthesized_expression "(piVar29[8] << 1 < 0)" (( "(") (binary_expression "piVar29[8] << 1 < 0" (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "1")) (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_0018736c;" (goto "goto") (statement_identifier "LAB_0018736c") (; ";"))) (expression_statement "(**(code **)(*piVar29 + 0x38))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x38))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x38))" (( "(") (pointer_expression "**(code **)(*piVar29 + 0x38)" (* "*") (pointer_expression "*(code **)(*piVar29 + 0x38)" (* "*") (cast_expression "(code **)(*piVar29 + 0x38)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar29 + 0x38)" (( "(") (binary_expression "*piVar29 + 0x38" (pointer_expression "*piVar29" (* "*") (identifier "piVar29")) (+ "+") (number_literal "0x38")) () ")"))))) () ")")) (argument_list "(piVar29)" (( "(") (identifier "piVar29") () ")"))) (; ";")) (expression_statement "iVar10 = piVar29[8];" (assignment_expression "iVar10 = piVar29[8]" (identifier "iVar10") (= "=") (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]"))) (; ";")) (expression_statement "uVar26 = uVar24;" (assignment_expression "uVar26 = uVar24" (identifier "uVar26") (= "=") (identifier "uVar24")) (; ";")) (labeled_statement "joined_r0x001878b8:\n          uVar24 = uVar26;" (statement_identifier "joined_r0x001878b8") (: ":") (expression_statement "uVar24 = uVar26;" (assignment_expression "uVar24 = uVar26" (identifier "uVar24") (= "=") (identifier "uVar26")) (; ";"))) (if_statement "if (-1 < iVar10 << 1) {\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }" (if "if") (parenthesized_expression "(-1 < iVar10 << 1)" (( "(") (binary_expression "-1 < iVar10 << 1" (number_literal "-1") (< "<") (binary_expression "iVar10 << 1" (identifier "iVar10") (<< "<<") (number_literal "1"))) () ")")) (compound_statement "{\nLAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);\n            return uVar32;\n          }" ({ "{") (labeled_statement "LAB_001878c0:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);" (statement_identifier "LAB_001878c0") (: ":") (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c)" (identifier "uVar32") (= "=") (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c)" (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,0x163,\n                                PTR_s_alize_xindex_004323b4 + 0x751c)" (( "(") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x4fe0")) (, ",") (number_literal "0x163") (, ",") (binary_expression "PTR_s_alize_xindex_004323b4 + 0x751c" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "0x751c")) () ")")))) (; ";"))) (return_statement "return uVar32;" (return "return") (identifier "uVar32") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }" (else "else") (compound_statement "{\n          iVar10 = *piVar23;\n          if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }\n          uVar21 = *(uint *)(iVar10 + 0x18);\n          uVar22 = *(uint *)(iVar10 + 0x1c);\n          uVar24 = uVar22;\n          uVar25 = uVar21;\n        }" ({ "{") (expression_statement "iVar10 = *piVar23;" (assignment_expression "iVar10 = *piVar23" (identifier "iVar10") (= "=") (pointer_expression "*piVar23" (* "*") (identifier "piVar23"))) (; ";")) (if_statement "if (-1 < *(int *)(iVar10 + 0x20) << 2) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }" (if "if") (parenthesized_expression "(-1 < *(int *)(iVar10 + 0x20) << 2)" (( "(") (binary_expression "-1 < *(int *)(iVar10 + 0x20) << 2" (number_literal "-1") (< "<") (binary_expression "*(int *)(iVar10 + 0x20) << 2" (pointer_expression "*(int *)(iVar10 + 0x20)" (* "*") (cast_expression "(int *)(iVar10 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + 0x20)" (( "(") (binary_expression "iVar10 + 0x20" (identifier "iVar10") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "2"))) () ")")) (compound_statement "{\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);\n            return uVar32;\n          }" ({ "{") (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818)" (identifier "uVar32") (= "=") (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,\n                                PTR_s_alize_xindex_004323b4 + 0x7818)" (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,\n                                PTR_s_alize_xindex_004323b4 + 0x7818)" (( "(") (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 + 0x7818" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "0x7818")) () ")")))) (; ";")) (return_statement "return uVar32;" (return "return") (identifier "uVar32") (; ";")) (} "}"))) (expression_statement "uVar21 = *(uint *)(iVar10 + 0x18);" (assignment_expression "uVar21 = *(uint *)(iVar10 + 0x18)" (identifier "uVar21") (= "=") (pointer_expression "*(uint *)(iVar10 + 0x18)" (* "*") (cast_expression "(uint *)(iVar10 + 0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + 0x18)" (( "(") (binary_expression "iVar10 + 0x18" (identifier "iVar10") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "uVar22 = *(uint *)(iVar10 + 0x1c);" (assignment_expression "uVar22 = *(uint *)(iVar10 + 0x1c)" (identifier "uVar22") (= "=") (pointer_expression "*(uint *)(iVar10 + 0x1c)" (* "*") (cast_expression "(uint *)(iVar10 + 0x1c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + 0x1c)" (( "(") (binary_expression "iVar10 + 0x1c" (identifier "iVar10") (+ "+") (number_literal "0x1c")) () ")"))))) (; ";")) (expression_statement "uVar24 = uVar22;" (assignment_expression "uVar24 = uVar22" (identifier "uVar24") (= "=") (identifier "uVar22")) (; ";")) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" (identifier "uVar25") (= "=") (identifier "uVar21")) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }" (else "else") (compound_statement "{\n        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();\n        if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }\n      }" ({ "{") (expression_statement "uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();" (assignment_expression "uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))()" (identifier "uVar32") (= "=") (call_expression "(**(code **)(*(int *)*piVar23 + 0xc))()" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0xc))" (( "(") (pointer_expression "**(code **)(*(int *)*piVar23 + 0xc)" (* "*") (pointer_expression "*(code **)(*(int *)*piVar23 + 0xc)" (* "*") (cast_expression "(code **)(*(int *)*piVar23 + 0xc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)*piVar23 + 0xc)" (( "(") (binary_expression "*(int *)*piVar23 + 0xc" (pointer_expression "*(int *)*piVar23" (* "*") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (+ "+") (number_literal "0xc")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar9 == 0) {\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }\n        else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          if (*in_stack_00000024 == '\0') goto LAB_00187254;\n          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n          if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" ({ "{") (if_statement "if (*in_stack_00000024 == '\0') goto LAB_00187254;" (if "if") (parenthesized_expression "(*in_stack_00000024 == '\0')" (( "(") (binary_expression "*in_stack_00000024 == '\0'" (pointer_expression "*in_stack_00000024" (* "*") (identifier "in_stack_00000024")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00187254;" (goto "goto") (statement_identifier "LAB_00187254") (; ";"))) (expression_statement "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));" (assignment_expression "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" (identifier "uVar33") (= "=") (call_expression "maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" (identifier "maximum_alignment") (argument_list "(*(Output_segment **)(iVar17 + 0x170))" (( "(") (pointer_expression "*(Output_segment **)(iVar17 + 0x170)" (* "*") (cast_expression "(Output_segment **)(iVar17 + 0x170)" (( "(") (type_descriptor "Output_segment **" (type_identifier "Output_segment") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar17 + 0x170)" (( "(") (binary_expression "iVar17 + 0x170" (identifier "iVar17") (+ "+") (number_literal "0x170")) () ")")))) () ")")))) (; ";")) (if_statement "if (uVar32 < uVar33) {\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }\n          else {\n            *in_stack_00000024 = '\0';\n          }" (if "if") (parenthesized_expression "(uVar32 < uVar33)" (( "(") (binary_expression "uVar32 < uVar33" (identifier "uVar32") (< "<") (identifier "uVar33")) () ")")) (compound_statement "{\n            *in_stack_00000024 = '\0';\n            uVar32 = uVar33;\n          }" ({ "{") (expression_statement "*in_stack_00000024 = '\0';" (assignment_expression "*in_stack_00000024 = '\0'" (pointer_expression "*in_stack_00000024" (* "*") (identifier "in_stack_00000024")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "uVar32 = uVar33;" (assignment_expression "uVar32 = uVar33" (identifier "uVar32") (= "=") (identifier "uVar33")) (; ";")) (} "}")) (else_clause "else {\n            *in_stack_00000024 = '\0';\n          }" (else "else") (compound_statement "{\n            *in_stack_00000024 = '\0';\n          }" ({ "{") (expression_statement "*in_stack_00000024 = '\0';" (assignment_expression "*in_stack_00000024 = '\0'" (pointer_expression "*in_stack_00000024" (* "*") (identifier "in_stack_00000024")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (} "}")))) (expression_statement "piVar15 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar15 = (int *)PTR_parameters_00432be0" (identifier "piVar15") (= "=") (cast_expression "(int *)PTR_parameters_00432be0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_00432be0"))) (; ";")) (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" (identifier "iVar10") (= "=") (call_expression "(*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" (( "(") (pointer_expression "*(code *)PTR_incremental_update_00432eb0" (* "*") (cast_expression "(code *)PTR_incremental_update_00432eb0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_incremental_update_00432eb0"))) () ")")) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" (( "(") (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" (* "*") (cast_expression "(undefined4 *)PTR_parameters_00432be0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_00432be0"))) () ")")))) (; ";")) (} "}")) (else_clause "else {\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" (else "else") (compound_statement "{\n          if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }\nLAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;\n          iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);\n        }" ({ "{") (if_statement "if (*in_stack_00000024 == '\0') {\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }" (if "if") (parenthesized_expression "(*in_stack_00000024 == '\0')" (( "(") (binary_expression "*in_stack_00000024 == '\0'" (pointer_expression "*in_stack_00000024" (* "*") (identifier "in_stack_00000024")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }\n            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));\n            if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }\n            *in_stack_00000024 = '\x01';\n            uVar32 = uVar33;\n          }" ({ "{") (if_statement "if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }" (if "if") (parenthesized_expression "(*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0)" (( "(") (binary_expression "*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0" (pointer_expression "*(Output_segment **)(iVar17 + 0x170)" (* "*") (cast_expression "(Output_segment **)(iVar17 + 0x170)" (( "(") (type_descriptor "Output_segment **" (type_identifier "Output_segment") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar17 + 0x170)" (( "(") (binary_expression "iVar17 + 0x170" (identifier "iVar17") (+ "+") (number_literal "0x170")) () ")")))) (== "==") (cast_expression "(Output_segment *)0x0" (( "(") (type_descriptor "Output_segment *" (type_identifier "Output_segment") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              uVar28 = 0x11c4;\n              goto LAB_00187b08;\n            }" ({ "{") (expression_statement "uVar28 = 0x11c4;" (assignment_expression "uVar28 = 0x11c4" (identifier "uVar28") (= "=") (number_literal "0x11c4")) (; ";")) (goto_statement "goto LAB_00187b08;" (goto "goto") (statement_identifier "LAB_00187b08") (; ";")) (} "}"))) (expression_statement "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));" (assignment_expression "uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" (identifier "uVar33") (= "=") (call_expression "maximum_alignment(*(Output_segment **)(iVar17 + 0x170))" (identifier "maximum_alignment") (argument_list "(*(Output_segment **)(iVar17 + 0x170))" (( "(") (pointer_expression "*(Output_segment **)(iVar17 + 0x170)" (* "*") (cast_expression "(Output_segment **)(iVar17 + 0x170)" (( "(") (type_descriptor "Output_segment **" (type_identifier "Output_segment") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar17 + 0x170)" (( "(") (binary_expression "iVar17 + 0x170" (identifier "iVar17") (+ "+") (number_literal "0x170")) () ")")))) () ")")))) (; ";")) (if_statement "if (uVar33 < uVar32) {\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }" (if "if") (parenthesized_expression "(uVar33 < uVar32)" (( "(") (binary_expression "uVar33 < uVar32" (identifier "uVar33") (< "<") (identifier "uVar32")) () ")")) (compound_statement "{\n              uVar28 = 0x11c6;\n              goto LAB_00187b08;\n            }" ({ "{") (expression_statement "uVar28 = 0x11c6;" (assignment_expression "uVar28 = 0x11c6" (identifier "uVar28") (= "=") (number_literal "0x11c6")) (; ";")) (goto_statement "goto LAB_00187b08;" (goto "goto") (statement_identifier "LAB_00187b08") (; ";")) (} "}"))) (expression_statement "*in_stack_00000024 = '\x01';" (assignment_expression "*in_stack_00000024 = '\x01'" (pointer_expression "*in_stack_00000024" (* "*") (identifier "in_stack_00000024")) (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "uVar32 = uVar33;" (assignment_expression "uVar32 = uVar33" (identifier "uVar32") (= "=") (identifier "uVar33")) (; ";")) (} "}"))) (labeled_statement "LAB_00187254:\n          piVar15 = (int *)PTR_parameters_00432be0;" (statement_identifier "LAB_00187254") (: ":") (expression_statement "piVar15 = (int *)PTR_parameters_00432be0;" (assignment_expression "piVar15 = (int *)PTR_parameters_00432be0" (identifier "piVar15") (= "=") (cast_expression "(int *)PTR_parameters_00432be0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_00432be0"))) (; ";"))) (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" (identifier "iVar10") (= "=") (call_expression "(*(code *)PTR_incremental_update_00432eb0)\n                             (*(undefined4 *)PTR_parameters_00432be0)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" (( "(") (pointer_expression "*(code *)PTR_incremental_update_00432eb0" (* "*") (cast_expression "(code *)PTR_incremental_update_00432eb0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_incremental_update_00432eb0"))) () ")")) (argument_list "(*(undefined4 *)PTR_parameters_00432be0)" (( "(") (pointer_expression "*(undefined4 *)PTR_parameters_00432be0" (* "*") (cast_expression "(undefined4 *)PTR_parameters_00432be0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_00432be0"))) () ")")))) (; ";")) (} "}")))) (if_statement "if (iVar10 == 0) {\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }\n        else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }\n          if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }\n          uVar26 = uVar22;\n          uVar25 = uVar21;\n          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }\n          piVar29 = (int *)*piVar23;\n          if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }\n          bVar1 = *(byte *)(piVar29 + 8);\n          *(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);\n          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n          if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }\n          piVar29[6] = uVar25;\n          piVar29[7] = uVar26;\n          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n          uVar24 = uVar26;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }\n        }" ({ "{") (if_statement "if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }" (if "if") (parenthesized_expression "(((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0))" (( "(") (binary_expression "((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)" (parenthesized_expression "((uVar21 != uVar27) || (uVar22 != uVar24))" (( "(") (binary_expression "(uVar21 != uVar27) || (uVar22 != uVar24)" (parenthesized_expression "(uVar21 != uVar27)" (( "(") (binary_expression "uVar21 != uVar27" (identifier "uVar21") (!= "!=") (identifier "uVar27")) () ")")) (|| "||") (parenthesized_expression "(uVar22 != uVar24)" (( "(") (binary_expression "uVar22 != uVar24" (identifier "uVar22") (!= "!=") (identifier "uVar24")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n            uVar28 = 0x11df;\nLAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);\n            return uVar32;\n          }" ({ "{") (expression_statement "uVar28 = 0x11df;" (assignment_expression "uVar28 = 0x11df" (identifier "uVar28") (= "=") (number_literal "0x11df")) (; ";")) (labeled_statement "LAB_00187b08:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);" (statement_identifier "LAB_00187b08") (: ":") (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014)" (identifier "uVar32") (= "=") (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014)" (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 + 0x59f0,uVar28,\n                                PTR_s_alize_xindex_004323b4 + 0x7014)" (( "(") (binary_expression "PTR_s_alize_xindex_004323b4 + 0x59f0" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "0x59f0")) (, ",") (identifier "uVar28") (, ",") (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7014" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "0x7014")) () ")")))) (; ";"))) (return_statement "return uVar32;" (return "return") (identifier "uVar32") (; ";")) (} "}"))) (if_statement "if (uVar32 != 0) {\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }" (if "if") (parenthesized_expression "(uVar32 != 0)" (( "(") (binary_expression "uVar32 != 0" (identifier "uVar32") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);\n            uVar22 = (uint)lVar3 & -(int)uVar32;\n            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);\n          }" ({ "{") (expression_statement "lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);" (assignment_expression "lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" (identifier "lVar3") (= "=") (binary_expression "uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" (identifier "uVar32") (+ "+") (call_expression "CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" (identifier "CONCAT44") (argument_list "((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1)" (( "(") (binary_expression "(uint)(uVar22 - 1 < uVar22) + (uVar21 - 1)" (call_expression "(uint)(uVar22 - 1 < uVar22)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar22 - 1 < uVar22)" (( "(") (binary_expression "uVar22 - 1 < uVar22" (binary_expression "uVar22 - 1" (identifier "uVar22") (- "-") (number_literal "1")) (< "<") (identifier "uVar22")) () ")"))) (+ "+") (parenthesized_expression "(uVar21 - 1)" (( "(") (binary_expression "uVar21 - 1" (identifier "uVar21") (- "-") (number_literal "1")) () ")"))) (, ",") (binary_expression "uVar22 - 1" (identifier "uVar22") (- "-") (number_literal "1")) () ")"))))) (; ";")) (expression_statement "uVar22 = (uint)lVar3 & -(int)uVar32;" (assignment_expression "uVar22 = (uint)lVar3 & -(int)uVar32" (identifier "uVar22") (= "=") (binary_expression "(uint)lVar3 & -(int)uVar32" (cast_expression "(uint)lVar3" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar3")) (& "&") (unary_expression "-(int)uVar32" (- "-") (cast_expression "(int)uVar32" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar32"))))) (; ";")) (expression_statement "uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20)" (identifier "uVar21") (= "=") (binary_expression "(uint)((ulonglong)lVar3 >> 0x20) &\n                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20)" (call_expression "(uint)((ulonglong)lVar3 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)lVar3 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar3 >> 0x20" (cast_expression "(ulonglong)lVar3" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar3")) (>> ">>") (number_literal "0x20")) () ")"))) (& "&") (binary_expression "-(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20)" (unary_expression "-(uint)(-(int)uVar32 != 0)" (- "-") (call_expression "(uint)(-(int)uVar32 != 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(-(int)uVar32 != 0)" (( "(") (binary_expression "-(int)uVar32 != 0" (unary_expression "-(int)uVar32" (- "-") (cast_expression "(int)uVar32" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar32"))) (!= "!=") (number_literal "0")) () ")")))) (- "-") (cast_expression "(int)(uVar32 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(uVar32 >> 0x20)" (( "(") (binary_expression "uVar32 >> 0x20" (identifier "uVar32") (>> ">>") (number_literal "0x20")) () ")")))))) (; ";")) (} "}"))) (expression_statement "uVar26 = uVar22;" (assignment_expression "uVar26 = uVar22" (identifier "uVar26") (= "=") (identifier "uVar22")) (; ";")) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" (identifier "uVar25") (= "=") (identifier "uVar21")) (; ";")) (if_statement "if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }" (if "if") (parenthesized_expression "((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0))" (( "(") (binary_expression "(iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)" (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)" (( "(") (comma_expression "uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0" (assignment_expression "uVar26 = uVar24" (identifier "uVar26") (= "=") (identifier "uVar24")) (, ",") (comma_expression "uVar25 = uVar27, iVar8 == 0" (assignment_expression "uVar25 = uVar27" (identifier "uVar25") (= "=") (identifier "uVar27")) (, ",") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")))) () ")"))) () ")")) (compound_statement "{\n            uVar26 = uVar22;\n            uVar25 = uVar21;\n          }" ({ "{") (expression_statement "uVar26 = uVar22;" (assignment_expression "uVar26 = uVar22" (identifier "uVar26") (= "=") (identifier "uVar22")) (; ";")) (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" (identifier "uVar25") (= "=") (identifier "uVar21")) (; ";")) (} "}"))) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" (identifier "piVar29") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (if_statement "if (piVar29[8] < 0) {\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }" (if "if") (parenthesized_expression "(piVar29[8] < 0)" (( "(") (binary_expression "piVar29[8] < 0" (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);\n            return uVar32;\n          }" ({ "{") (labeled_statement "LAB_00187b74:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);" (statement_identifier "LAB_00187b74") (: ":") (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540)" (identifier "uVar32") (= "=") (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540)" (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,0x142,\n                                PTR_s_alize_xindex_004323b4 + 0x7540)" (( "(") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x4fe0")) (, ",") (number_literal "0x142") (, ",") (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7540" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "0x7540")) () ")")))) (; ";"))) (return_statement "return uVar32;" (return "return") (identifier "uVar32") (; ";")) (} "}"))) (expression_statement "bVar1 = *(byte *)(piVar29 + 8);" (assignment_expression "bVar1 = *(byte *)(piVar29 + 8)" (identifier "bVar1") (= "=") (pointer_expression "*(byte *)(piVar29 + 8)" (* "*") (cast_expression "(byte *)(piVar29 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar29 + 8)" (( "(") (binary_expression "piVar29 + 8" (identifier "piVar29") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "*(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14);" (assignment_expression "*(ulonglong *)(piVar29 + 2) =\n               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" (pointer_expression "*(ulonglong *)(piVar29 + 2)" (* "*") (cast_expression "(ulonglong *)(piVar29 + 2)" (( "(") (type_descriptor "ulonglong *" (type_identifier "ulonglong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar29 + 2)" (( "(") (binary_expression "piVar29 + 2" (identifier "piVar29") (+ "+") (number_literal "2")) () ")")))) (= "=") (binary_expression "param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" (identifier "param_4") (+ "+") (call_expression "CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" (identifier "CONCAT44") (argument_list "((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                  uVar22 - uVar14)" (( "(") (binary_expression "(uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uVar21 - uVar12)" (( "(") (binary_expression "uVar21 - uVar12" (identifier "uVar21") (- "-") (identifier "uVar12")) () ")")) (- "-") (call_expression "(uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar22 < uVar22 - uVar14)" (( "(") (binary_expression "uVar22 < uVar22 - uVar14" (identifier "uVar22") (< "<") (binary_expression "uVar22 - uVar14" (identifier "uVar22") (- "-") (identifier "uVar14"))) () ")")))) (, ",") (binary_expression "uVar22 - uVar14" (identifier "uVar22") (- "-") (identifier "uVar14")) () ")"))))) (; ";")) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80" (pointer_expression "*(byte *)(piVar29 + 8)" (* "*") (cast_expression "(byte *)(piVar29 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar29 + 8)" (( "(") (binary_expression "piVar29 + 8" (identifier "piVar29") (+ "+") (number_literal "8")) () ")")))) (= "=") (binary_expression "bVar1 & 0x7f | 0x80" (binary_expression "bVar1 & 0x7f" (identifier "bVar1") (& "&") (number_literal "0x7f")) (| "|") (number_literal "0x80"))) (; ";")) (if_statement "if (piVar29[8] << 2 < 0) {\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }" (if "if") (parenthesized_expression "(piVar29[8] << 2 < 0)" (( "(") (binary_expression "piVar29[8] << 2 < 0" (binary_expression "piVar29[8] << 2" (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "2")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);\n            return uVar32;\n          }" ({ "{") (labeled_statement "LAB_00187b94:\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);" (statement_identifier "LAB_00187b94") (: ":") (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000)" (identifier "uVar32") (= "=") (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000)" (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,0x14b,\n                                PTR_s_alize_xindex_004323b4 + 30000)" (( "(") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x4fe0")) (, ",") (number_literal "0x14b") (, ",") (binary_expression "PTR_s_alize_xindex_004323b4 + 30000" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "30000")) () ")")))) (; ";"))) (return_statement "return uVar32;" (return "return") (identifier "uVar32") (; ";")) (} "}"))) (expression_statement "piVar29[6] = uVar25;" (assignment_expression "piVar29[6] = uVar25" (subscript_expression "piVar29[6]" (identifier "piVar29") ([ "[") (number_literal "6") (] "]")) (= "=") (identifier "uVar25")) (; ";")) (expression_statement "piVar29[7] = uVar26;" (assignment_expression "piVar29[7] = uVar26" (subscript_expression "piVar29[7]" (identifier "piVar29") ([ "[") (number_literal "7") (] "]")) (= "=") (identifier "uVar26")) (; ";")) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0" (pointer_expression "*(byte *)(piVar29 + 8)" (* "*") (cast_expression "(byte *)(piVar29 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar29 + 8)" (( "(") (binary_expression "piVar29 + 8" (identifier "piVar29") (+ "+") (number_literal "8")) () ")")))) (= "=") (binary_expression "bVar1 & 0x5f | 0xa0" (binary_expression "bVar1 & 0x5f" (identifier "bVar1") (& "&") (number_literal "0x5f")) (| "|") (number_literal "0xa0"))) (; ";")) (expression_statement "uVar24 = uVar26;" (assignment_expression "uVar24 = uVar26" (identifier "uVar24") (= "=") (identifier "uVar26")) (; ";")) (if_statement "if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }" (if "if") (parenthesized_expression "(-1 < piVar29[8] << 1)" (( "(") (binary_expression "-1 < piVar29[8] << 1" (number_literal "-1") (< "<") (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "1"))) () ")")) (compound_statement "{\n            (**(code **)(*piVar29 + 0x38))(piVar29);\n            iVar10 = piVar29[8];\n            goto joined_r0x001878b8;\n          }" ({ "{") (expression_statement "(**(code **)(*piVar29 + 0x38))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x38))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x38))" (( "(") (pointer_expression "**(code **)(*piVar29 + 0x38)" (* "*") (pointer_expression "*(code **)(*piVar29 + 0x38)" (* "*") (cast_expression "(code **)(*piVar29 + 0x38)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar29 + 0x38)" (( "(") (binary_expression "*piVar29 + 0x38" (pointer_expression "*piVar29" (* "*") (identifier "piVar29")) (+ "+") (number_literal "0x38")) () ")"))))) () ")")) (argument_list "(piVar29)" (( "(") (identifier "piVar29") () ")"))) (; ";")) (expression_statement "iVar10 = piVar29[8];" (assignment_expression "iVar10 = piVar29[8]" (identifier "iVar10") (= "=") (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]"))) (; ";")) (goto_statement "goto joined_r0x001878b8;" (goto "goto") (statement_identifier "joined_r0x001878b8") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }" (else "else") (compound_statement "{\n          piVar29 = (int *)*piVar23;\n          if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }\n          uVar26 = piVar29[4];\n          uVar27 = piVar29[5];\n          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);\n          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n          uVar22 = (uint)uVar34;\n          if (uVar21 == 0xffffffff) goto LAB_00187acc;\n          while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }\n        }" ({ "{") (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" (identifier "piVar29") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (if_statement "if (-1 < piVar29[8] << 1) {\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }" (if "if") (parenthesized_expression "(-1 < piVar29[8] << 1)" (( "(") (binary_expression "-1 < piVar29[8] << 1" (number_literal "-1") (< "<") (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "1"))) () ")")) (compound_statement "{\n            (**(code **)(*piVar29 + 0x34))(piVar29);\n            piVar29 = (int *)*piVar23;\n          }" ({ "{") (expression_statement "(**(code **)(*piVar29 + 0x34))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x34))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x34))" (( "(") (pointer_expression "**(code **)(*piVar29 + 0x34)" (* "*") (pointer_expression "*(code **)(*piVar29 + 0x34)" (* "*") (cast_expression "(code **)(*piVar29 + 0x34)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar29 + 0x34)" (( "(") (binary_expression "*piVar29 + 0x34" (pointer_expression "*piVar29" (* "*") (identifier "piVar29")) (+ "+") (number_literal "0x34")) () ")"))))) () ")")) (argument_list "(piVar29)" (( "(") (identifier "piVar29") () ")"))) (; ";")) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" (identifier "piVar29") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (} "}"))) (expression_statement "uVar26 = piVar29[4];" (assignment_expression "uVar26 = piVar29[4]" (identifier "uVar26") (= "=") (subscript_expression "piVar29[4]" (identifier "piVar29") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "uVar27 = piVar29[5];" (assignment_expression "uVar27 = piVar29[5]" (identifier "uVar27") (= "=") (subscript_expression "piVar29[5]" (identifier "piVar29") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);" (assignment_expression "uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600)" (identifier "uVar34") (= "=") (call_expression "(*(code *)PTR_allocate_00432eb4)(iVar17 + 600)" (parenthesized_expression "(*(code *)PTR_allocate_00432eb4)" (( "(") (pointer_expression "*(code *)PTR_allocate_00432eb4" (* "*") (cast_expression "(code *)PTR_allocate_00432eb4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_allocate_00432eb4"))) () ")")) (argument_list "(iVar17 + 600)" (( "(") (binary_expression "iVar17 + 600" (identifier "iVar17") (+ "+") (number_literal "600")) () ")")))) (; ";")) (expression_statement "uVar21 = (uint)((ulonglong)uVar34 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)uVar34 >> 0x20)" (identifier "uVar21") (= "=") (call_expression "(uint)((ulonglong)uVar34 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)uVar34 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar34 >> 0x20" (cast_expression "(ulonglong)uVar34" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar34")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "uVar22 = (uint)uVar34;" (assignment_expression "uVar22 = (uint)uVar34" (identifier "uVar22") (= "=") (cast_expression "(uint)uVar34" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar34"))) (; ";")) (if_statement "if (uVar21 == 0xffffffff) goto LAB_00187acc;" (if "if") (parenthesized_expression "(uVar21 == 0xffffffff)" (( "(") (binary_expression "uVar21 == 0xffffffff" (identifier "uVar21") (== "==") (number_literal "0xffffffff")) () ")")) (goto_statement "goto LAB_00187acc;" (goto "goto") (statement_identifier "LAB_00187acc") (; ";"))) (while_statement "while( true ) {\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n            piVar29 = (int *)*piVar23;\n            if (piVar29[8] < 0) goto LAB_00187b74;\n            bVar1 = *(byte *)(piVar29 + 8);\n            *(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);\n            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;\n            if (piVar29[8] << 2 < 0) goto LAB_00187b94;\n            piVar29[6] = uVar21;\n            piVar29[7] = uVar22;\n            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;\n            if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }\n            if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;\n            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);\n            if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }\n            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;\n            while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }\n          }" ({ "{") (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" (identifier "piVar29") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (if_statement "if (piVar29[8] < 0) goto LAB_00187b74;" (if "if") (parenthesized_expression "(piVar29[8] < 0)" (( "(") (binary_expression "piVar29[8] < 0" (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]")) (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00187b74;" (goto "goto") (statement_identifier "LAB_00187b74") (; ";"))) (expression_statement "bVar1 = *(byte *)(piVar29 + 8);" (assignment_expression "bVar1 = *(byte *)(piVar29 + 8)" (identifier "bVar1") (= "=") (pointer_expression "*(byte *)(piVar29 + 8)" (* "*") (cast_expression "(byte *)(piVar29 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar29 + 8)" (( "(") (binary_expression "piVar29 + 8" (identifier "piVar29") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "*(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14);" (assignment_expression "*(ulonglong *)(piVar29 + 2) =\n                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" (pointer_expression "*(ulonglong *)(piVar29 + 2)" (* "*") (cast_expression "(ulonglong *)(piVar29 + 2)" (( "(") (type_descriptor "ulonglong *" (type_identifier "ulonglong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar29 + 2)" (( "(") (binary_expression "piVar29 + 2" (identifier "piVar29") (+ "+") (number_literal "2")) () ")")))) (= "=") (binary_expression "param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" (identifier "param_4") (+ "+") (call_expression "CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" (identifier "CONCAT44") (argument_list "((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),\n                                    uVar22 - uVar14)" (( "(") (binary_expression "(uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uVar21 - uVar12)" (( "(") (binary_expression "uVar21 - uVar12" (identifier "uVar21") (- "-") (identifier "uVar12")) () ")")) (- "-") (call_expression "(uint)(uVar22 < uVar22 - uVar14)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar22 < uVar22 - uVar14)" (( "(") (binary_expression "uVar22 < uVar22 - uVar14" (identifier "uVar22") (< "<") (binary_expression "uVar22 - uVar14" (identifier "uVar22") (- "-") (identifier "uVar14"))) () ")")))) (, ",") (binary_expression "uVar22 - uVar14" (identifier "uVar22") (- "-") (identifier "uVar14")) () ")"))))) (; ";")) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80" (pointer_expression "*(byte *)(piVar29 + 8)" (* "*") (cast_expression "(byte *)(piVar29 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar29 + 8)" (( "(") (binary_expression "piVar29 + 8" (identifier "piVar29") (+ "+") (number_literal "8")) () ")")))) (= "=") (binary_expression "bVar1 & 0x7f | 0x80" (binary_expression "bVar1 & 0x7f" (identifier "bVar1") (& "&") (number_literal "0x7f")) (| "|") (number_literal "0x80"))) (; ";")) (if_statement "if (piVar29[8] << 2 < 0) goto LAB_00187b94;" (if "if") (parenthesized_expression "(piVar29[8] << 2 < 0)" (( "(") (binary_expression "piVar29[8] << 2 < 0" (binary_expression "piVar29[8] << 2" (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "2")) (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00187b94;" (goto "goto") (statement_identifier "LAB_00187b94") (; ";"))) (expression_statement "piVar29[6] = uVar21;" (assignment_expression "piVar29[6] = uVar21" (subscript_expression "piVar29[6]" (identifier "piVar29") ([ "[") (number_literal "6") (] "]")) (= "=") (identifier "uVar21")) (; ";")) (expression_statement "piVar29[7] = uVar22;" (assignment_expression "piVar29[7] = uVar22" (subscript_expression "piVar29[7]" (identifier "piVar29") ([ "[") (number_literal "7") (] "]")) (= "=") (identifier "uVar22")) (; ";")) (expression_statement "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;" (assignment_expression "*(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0" (pointer_expression "*(byte *)(piVar29 + 8)" (* "*") (cast_expression "(byte *)(piVar29 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar29 + 8)" (( "(") (binary_expression "piVar29 + 8" (identifier "piVar29") (+ "+") (number_literal "8")) () ")")))) (= "=") (binary_expression "bVar1 & 0x5f | 0xa0" (binary_expression "bVar1 & 0x5f" (identifier "bVar1") (& "&") (number_literal "0x5f")) (| "|") (number_literal "0xa0"))) (; ";")) (if_statement "if (-1 < piVar29[8] << 1) {\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }" (if "if") (parenthesized_expression "(-1 < piVar29[8] << 1)" (( "(") (binary_expression "-1 < piVar29[8] << 1" (number_literal "-1") (< "<") (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "1"))) () ")")) (compound_statement "{\n              (**(code **)(*piVar29 + 0x38))(piVar29);\n              if (-1 < piVar29[8] << 1) goto LAB_001878c0;\n              piVar29 = (int *)*piVar23;\n              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;\n            }" ({ "{") (expression_statement "(**(code **)(*piVar29 + 0x38))(piVar29);" (call_expression "(**(code **)(*piVar29 + 0x38))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x38))" (( "(") (pointer_expression "**(code **)(*piVar29 + 0x38)" (* "*") (pointer_expression "*(code **)(*piVar29 + 0x38)" (* "*") (cast_expression "(code **)(*piVar29 + 0x38)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar29 + 0x38)" (( "(") (binary_expression "*piVar29 + 0x38" (pointer_expression "*piVar29" (* "*") (identifier "piVar29")) (+ "+") (number_literal "0x38")) () ")"))))) () ")")) (argument_list "(piVar29)" (( "(") (identifier "piVar29") () ")"))) (; ";")) (if_statement "if (-1 < piVar29[8] << 1) goto LAB_001878c0;" (if "if") (parenthesized_expression "(-1 < piVar29[8] << 1)" (( "(") (binary_expression "-1 < piVar29[8] << 1" (number_literal "-1") (< "<") (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "1"))) () ")")) (goto_statement "goto LAB_001878c0;" (goto "goto") (statement_identifier "LAB_001878c0") (; ";"))) (expression_statement "piVar29 = (int *)*piVar23;" (assignment_expression "piVar29 = (int *)*piVar23" (identifier "piVar29") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (if_statement "if (-1 < piVar29[8] << 1) goto LAB_00187b5c;" (if "if") (parenthesized_expression "(-1 < piVar29[8] << 1)" (( "(") (binary_expression "-1 < piVar29[8] << 1" (number_literal "-1") (< "<") (binary_expression "piVar29[8] << 1" (subscript_expression "piVar29[8]" (identifier "piVar29") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "1"))) () ")")) (goto_statement "goto LAB_00187b5c;" (goto "goto") (statement_identifier "LAB_00187b5c") (; ";"))) (} "}"))) (if_statement "if ((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;" (if "if") (parenthesized_expression "((piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0))))" (( "(") (binary_expression "(piVar29[4] <= (int)uVar26) &&\n               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))" (parenthesized_expression "(piVar29[4] <= (int)uVar26)" (( "(") (binary_expression "piVar29[4] <= (int)uVar26" (subscript_expression "piVar29[4]" (identifier "piVar29") ([ "[") (number_literal "4") (] "]")) (<= "<=") (cast_expression "(int)uVar26" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar26"))) () ")")) (&& "&&") (parenthesized_expression "((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))" (( "(") (parenthesized_expression "(uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0))" (( "(") (comma_expression "uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" (assignment_expression "uVar24 = uVar22" (identifier "uVar24") (= "=") (identifier "uVar22")) (, ",") (comma_expression "uVar25 = uVar21, piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" (assignment_expression "uVar25 = uVar21" (identifier "uVar25") (= "=") (identifier "uVar21")) (, ",") (binary_expression "piVar29[4] != uVar26 ||\n                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" (binary_expression "piVar29[4] != uVar26" (subscript_expression "piVar29[4]" (identifier "piVar29") ([ "[") (number_literal "4") (] "]")) (!= "!=") (identifier "uVar26")) (|| "||") (parenthesized_expression "(uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)" (( "(") (comma_expression "uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0" (assignment_expression "uVar26 = (uint)(uVar27 < (uint)piVar29[5])" (identifier "uVar26") (= "=") (call_expression "(uint)(uVar27 < (uint)piVar29[5])" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar27 < (uint)piVar29[5])" (( "(") (binary_expression "uVar27 < (uint)piVar29[5]" (identifier "uVar27") (< "<") (cast_expression "(uint)piVar29[5]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "piVar29[5]" (identifier "piVar29") ([ "[") (number_literal "5") (] "]")))) () ")")))) (, ",") (binary_expression "uVar26 == 0" (identifier "uVar26") (== "==") (number_literal "0"))) () ")"))))) () ")")) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);" (assignment_expression "iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29)" (identifier "iVar10") (= "=") (call_expression "(**(code **)(*piVar29 + 0x24))(piVar29)" (parenthesized_expression "(**(code **)(*piVar29 + 0x24))" (( "(") (pointer_expression "**(code **)(*piVar29 + 0x24)" (* "*") (pointer_expression "*(code **)(*piVar29 + 0x24)" (* "*") (cast_expression "(code **)(*piVar29 + 0x24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar29 + 0x24)" (( "(") (binary_expression "*piVar29 + 0x24" (pointer_expression "*piVar29" (* "*") (identifier "piVar29")) (+ "+") (number_literal "0x24")) () ")"))))) () ")")) (argument_list "(piVar29)" (( "(") (identifier "piVar29") () ")")))) (; ";")) (if_statement "if (iVar10 == 0) {\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              uVar28 = 0x11f6;\n              goto LAB_00187b08;\n            }" ({ "{") (expression_statement "uVar28 = 0x11f6;" (assignment_expression "uVar28 = 0x11f6" (identifier "uVar28") (= "=") (number_literal "0x11f6")) (; ";")) (goto_statement "goto LAB_00187b08;" (goto "goto") (statement_identifier "LAB_00187b08") (; ";")) (} "}"))) (expression_statement "puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;" (assignment_expression "puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c" (identifier "puVar16") (= "=") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x299c" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x299c"))) (; ";")) (while_statement "while( true ) {\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));\n              uVar34 = CONCAT44(uVar28,extraout_v1);\nLAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);\n              if ((uint)uVar34 != uVar21) break;\n              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n              if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }\n              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;\n            }" ({ "{") (expression_statement "uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);" (assignment_expression "uVar28 = (*(code *)PTR_gettext_00436818)(puVar16)" (identifier "uVar28") (= "=") (call_expression "(*(code *)PTR_gettext_00436818)(puVar16)" (parenthesized_expression "(*(code *)PTR_gettext_00436818)" (( "(") (pointer_expression "*(code *)PTR_gettext_00436818" (* "*") (cast_expression "(code *)PTR_gettext_00436818" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_gettext_00436818"))) () ")")) (argument_list "(puVar16)" (( "(") (identifier "puVar16") () ")")))) (; ";")) (expression_statement "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);" (assignment_expression "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (identifier "iVar10") (= "=") (call_expression "(**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x24))" (( "(") (pointer_expression "**(code **)(*(int *)*piVar23 + 0x24)" (* "*") (pointer_expression "*(code **)(*(int *)*piVar23 + 0x24)" (* "*") (cast_expression "(code **)(*(int *)*piVar23 + 0x24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)*piVar23 + 0x24)" (( "(") (binary_expression "*(int *)*piVar23 + 0x24" (pointer_expression "*(int *)*piVar23" (* "*") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (+ "+") (number_literal "0x24")) () ")"))))) () ")")) (argument_list "((int *)*piVar23)" (( "(") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23"))) () ")")))) (; ";")) (expression_statement "(*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));" (call_expression "(*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24))" (parenthesized_expression "(*(code *)PTR_gold_fallback_00432ebc)" (( "(") (pointer_expression "*(code *)PTR_gold_fallback_00432ebc" (* "*") (cast_expression "(code *)PTR_gold_fallback_00432ebc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_gold_fallback_00432ebc"))) () ")")) (argument_list "(uVar28,*(undefined4 *)(iVar10 + 0x24))" (( "(") (identifier "uVar28") (, ",") (pointer_expression "*(undefined4 *)(iVar10 + 0x24)" (* "*") (cast_expression "(undefined4 *)(iVar10 + 0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + 0x24)" (( "(") (binary_expression "iVar10 + 0x24" (identifier "iVar10") (+ "+") (number_literal "0x24")) () ")")))) () ")"))) (; ";")) (expression_statement "uVar34 = CONCAT44(uVar28,extraout_v1);" (assignment_expression "uVar34 = CONCAT44(uVar28,extraout_v1)" (identifier "uVar34") (= "=") (call_expression "CONCAT44(uVar28,extraout_v1)" (identifier "CONCAT44") (argument_list "(uVar28,extraout_v1)" (( "(") (identifier "uVar28") (, ",") (identifier "extraout_v1") () ")")))) (; ";")) (labeled_statement "LAB_00187acc:\n              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);" (statement_identifier "LAB_00187acc") (: ":") (expression_statement "uVar21 = (uint)((ulonglong)uVar34 >> 0x20);" (assignment_expression "uVar21 = (uint)((ulonglong)uVar34 >> 0x20)" (identifier "uVar21") (= "=") (call_expression "(uint)((ulonglong)uVar34 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)uVar34 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar34 >> 0x20" (cast_expression "(ulonglong)uVar34" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar34")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";"))) (if_statement "if ((uint)uVar34 != uVar21) break;" (if "if") (parenthesized_expression "((uint)uVar34 != uVar21)" (( "(") (binary_expression "(uint)uVar34 != uVar21" (cast_expression "(uint)uVar34" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar34")) (!= "!=") (identifier "uVar21")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);" (assignment_expression "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (identifier "iVar10") (= "=") (call_expression "(**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x24))" (( "(") (pointer_expression "**(code **)(*(int *)*piVar23 + 0x24)" (* "*") (pointer_expression "*(code **)(*(int *)*piVar23 + 0x24)" (* "*") (cast_expression "(code **)(*(int *)*piVar23 + 0x24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)*piVar23 + 0x24)" (( "(") (binary_expression "*(int *)*piVar23 + 0x24" (pointer_expression "*(int *)*piVar23" (* "*") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (+ "+") (number_literal "0x24")) () ")"))))) () ")")) (argument_list "((int *)*piVar23)" (( "(") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23"))) () ")")))) (; ";")) (if_statement "if (iVar10 == 0) {\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                uVar28 = 0x11ee;\n                goto LAB_00187b08;\n              }" ({ "{") (expression_statement "uVar28 = 0x11ee;" (assignment_expression "uVar28 = 0x11ee" (identifier "uVar28") (= "=") (number_literal "0x11ee")) (; ";")) (goto_statement "goto LAB_00187b08;" (goto "goto") (statement_identifier "LAB_00187b08") (; ";")) (} "}"))) (expression_statement "puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;" (assignment_expression "puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0" (identifier "puVar16") (= "=") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x29e0" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x29e0"))) (; ";")) (} "}"))) (} "}"))) (} "}")))) (} "}")))) (labeled_statement "LAB_0018736c:\n      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);" (statement_identifier "LAB_0018736c") (: ":") (expression_statement "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);" (assignment_expression "iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15)" (identifier "iVar10") (= "=") (call_expression "(*(code *)PTR_incremental_update_00432eb0)(*piVar15)" (parenthesized_expression "(*(code *)PTR_incremental_update_00432eb0)" (( "(") (pointer_expression "*(code *)PTR_incremental_update_00432eb0" (* "*") (cast_expression "(code *)PTR_incremental_update_00432eb0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_incremental_update_00432eb0"))) () ")")) (argument_list "(*piVar15)" (( "(") (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) () ")")))) (; ";"))) (if_statement "if (iVar10 == 0) {\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }\n      else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00187410:\n        piVar15 = (int *)*piVar23;\n      }" ({ "{") (labeled_statement "LAB_00187410:\n        piVar15 = (int *)*piVar23;" (statement_identifier "LAB_00187410") (: ":") (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" (identifier "piVar15") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";"))) (} "}")) (else_clause "else {\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }" (else "else") (compound_statement "{\n        puVar13 = (undefined4 *)*piVar15;\n        piVar15 = (int *)*piVar23;\n        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }\n      }" ({ "{") (expression_statement "puVar13 = (undefined4 *)*piVar15;" (assignment_expression "puVar13 = (undefined4 *)*piVar15" (identifier "puVar13") (= "=") (cast_expression "(undefined4 *)*piVar15" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar15" (* "*") (identifier "piVar15")))) (; ";")) (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" (identifier "piVar15") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (if_statement "if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }" (if "if") (parenthesized_expression "((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0))" (( "(") (binary_expression "(puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)" (parenthesized_expression "(puVar13[2] != 0)" (( "(") (binary_expression "puVar13[2] != 0" (subscript_expression "puVar13[2]" (identifier "puVar13") ([ "[") (number_literal "2") (] "]")) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((puVar13[5] & 0x10) != 0)" (( "(") (binary_expression "(puVar13[5] & 0x10) != 0" (parenthesized_expression "(puVar13[5] & 0x10)" (( "(") (binary_expression "puVar13[5] & 0x10" (subscript_expression "puVar13[5]" (identifier "puVar13") ([ "[") (number_literal "5") (] "]")) (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n          uVar28 = *puVar13;\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          iVar30 = piVar15[5];\n          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);\n          puVar16 = puVar7;\n          if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }\n          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);\n          goto LAB_00187410;\n        }" ({ "{") (expression_statement "uVar28 = *puVar13;" (assignment_expression "uVar28 = *puVar13" (identifier "uVar28") (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (if_statement "if (-1 < piVar15[8] << 1) goto LAB_00187b5c;" (if "if") (parenthesized_expression "(-1 < piVar15[8] << 1)" (( "(") (binary_expression "-1 < piVar15[8] << 1" (number_literal "-1") (< "<") (binary_expression "piVar15[8] << 1" (subscript_expression "piVar15[8]" (identifier "piVar15") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "1"))) () ")")) (goto_statement "goto LAB_00187b5c;" (goto "goto") (statement_identifier "LAB_00187b5c") (; ";"))) (expression_statement "iVar30 = piVar15[5];" (assignment_expression "iVar30 = piVar15[5]" (identifier "iVar30") (= "=") (subscript_expression "piVar15[5]" (identifier "piVar15") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);" (assignment_expression "iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15)" (identifier "iVar10") (= "=") (call_expression "(**(code **)(*piVar15 + 0x24))(piVar15)" (parenthesized_expression "(**(code **)(*piVar15 + 0x24))" (( "(") (pointer_expression "**(code **)(*piVar15 + 0x24)" (* "*") (pointer_expression "*(code **)(*piVar15 + 0x24)" (* "*") (cast_expression "(code **)(*piVar15 + 0x24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar15 + 0x24)" (( "(") (binary_expression "*piVar15 + 0x24" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (+ "+") (number_literal "0x24")) () ")"))))) () ")")) (argument_list "(piVar15)" (( "(") (identifier "piVar15") () ")")))) (; ";")) (expression_statement "puVar16 = puVar7;" (assignment_expression "puVar16 = puVar7" (identifier "puVar16") (= "=") (identifier "puVar7")) (; ";")) (if_statement "if (iVar10 != 0) {\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);\n            puVar16 = *(undefined **)(iVar10 + 0x24);\n          }" ({ "{") (expression_statement "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);" (assignment_expression "iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (identifier "iVar10") (= "=") (call_expression "(**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23)" (parenthesized_expression "(**(code **)(*(int *)*piVar23 + 0x24))" (( "(") (pointer_expression "**(code **)(*(int *)*piVar23 + 0x24)" (* "*") (pointer_expression "*(code **)(*(int *)*piVar23 + 0x24)" (* "*") (cast_expression "(code **)(*(int *)*piVar23 + 0x24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)*piVar23 + 0x24)" (( "(") (binary_expression "*(int *)*piVar23 + 0x24" (pointer_expression "*(int *)*piVar23" (* "*") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (+ "+") (number_literal "0x24")) () ")"))))) () ")")) (argument_list "((int *)*piVar23)" (( "(") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23"))) () ")")))) (; ";")) (expression_statement "puVar16 = *(undefined **)(iVar10 + 0x24);" (assignment_expression "puVar16 = *(undefined **)(iVar10 + 0x24)" (identifier "puVar16") (= "=") (pointer_expression "*(undefined **)(iVar10 + 0x24)" (* "*") (cast_expression "(undefined **)(iVar10 + 0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar10 + 0x24)" (( "(") (binary_expression "iVar10 + 0x24" (identifier "iVar10") (+ "+") (number_literal "0x24")) () ")"))))) (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);" (call_expression "(*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16)" (parenthesized_expression "(*(code *)PTR_debug_00432ce0)" (( "(") (pointer_expression "*(code *)PTR_debug_00432ce0" (* "*") (cast_expression "(code *)PTR_debug_00432ce0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_debug_00432ce0"))) () ")")) (argument_list "(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16)" (( "(") (identifier "uVar28") (, ",") (binary_expression "puVar4 + 0x5b24" (identifier "puVar4") (+ "+") (number_literal "0x5b24")) (, ",") (identifier "uVar22") (, ",") (identifier "iVar30") (, ",") (identifier "puVar16") () ")"))) (; ";")) (goto_statement "goto LAB_00187410;" (goto "goto") (statement_identifier "LAB_00187410") (; ";")) (} "}"))) (} "}")))) (expression_statement "uVar27 = uVar25;" (assignment_expression "uVar27 = uVar25" (identifier "uVar27") (= "=") (identifier "uVar25")) (; ";")) (if_statement "if (iVar9 == 0) {\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }\n      else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }\n        uVar25 = uVar22 + piVar15[5];\n        if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }\n        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n        if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }\n      }" ({ "{") (if_statement "if (-1 < piVar15[8] << 1) {\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }" (if "if") (parenthesized_expression "(-1 < piVar15[8] << 1)" (( "(") (binary_expression "-1 < piVar15[8] << 1" (number_literal "-1") (< "<") (binary_expression "piVar15[8] << 1" (subscript_expression "piVar15[8]" (identifier "piVar15") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "1"))) () ")")) (compound_statement "{\nLAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);\n          return uVar32;\n        }" ({ "{") (labeled_statement "LAB_00187b5c:\n          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);" (statement_identifier "LAB_00187b5c") (: ":") (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894)" (identifier "uVar32") (= "=") (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,\n                              PTR_s_alize_xindex_004323b4 + 0x7894)" (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,\n                              PTR_s_alize_xindex_004323b4 + 0x7894)" (( "(") (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 + 0x7894" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "0x7894")) () ")")))) (; ";"))) (return_statement "return uVar32;" (return "return") (identifier "uVar32") (; ";")) (} "}"))) (expression_statement "uVar25 = uVar22 + piVar15[5];" (assignment_expression "uVar25 = uVar22 + piVar15[5]" (identifier "uVar25") (= "=") (binary_expression "uVar22 + piVar15[5]" (identifier "uVar22") (+ "+") (subscript_expression "piVar15[5]" (identifier "piVar15") ([ "[") (number_literal "5") (] "]")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          uVar24 = uVar25;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uVar24 = uVar25;\n        }" ({ "{") (expression_statement "uVar24 = uVar25;" (assignment_expression "uVar24 = uVar25" (identifier "uVar24") (= "=") (identifier "uVar25")) (; ";")) (} "}"))) (expression_statement "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];" (assignment_expression "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" (identifier "uVar21") (= "=") (binary_expression "(uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" (binary_expression "(uint)(uVar25 < uVar22) + uVar21" (call_expression "(uint)(uVar25 < uVar22)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar25 < uVar22)" (( "(") (binary_expression "uVar25 < uVar22" (identifier "uVar25") (< "<") (identifier "uVar22")) () ")"))) (+ "+") (identifier "uVar21")) (+ "+") (subscript_expression "piVar15[4]" (identifier "piVar15") ([ "[") (number_literal "4") (] "]")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          uVar27 = uVar21;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uVar27 = uVar21;\n        }" ({ "{") (expression_statement "uVar27 = uVar21;" (assignment_expression "uVar27 = uVar21" (identifier "uVar27") (= "=") (identifier "uVar21")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }" (else "else") (compound_statement "{\n        uVar25 = uVar22;\n        if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }\n      }" ({ "{") (expression_statement "uVar25 = uVar22;" (assignment_expression "uVar25 = uVar22" (identifier "uVar25") (= "=") (identifier "uVar22")) (; ";")) (if_statement "if (iVar8 == 0) {\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;\n          uVar25 = uVar22 + piVar15[5];\n          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];\n          uVar24 = uVar25;\n          uVar27 = uVar21;\n        }" ({ "{") (if_statement "if (-1 < piVar15[8] << 1) goto LAB_00187b5c;" (if "if") (parenthesized_expression "(-1 < piVar15[8] << 1)" (( "(") (binary_expression "-1 < piVar15[8] << 1" (number_literal "-1") (< "<") (binary_expression "piVar15[8] << 1" (subscript_expression "piVar15[8]" (identifier "piVar15") ([ "[") (number_literal "8") (] "]")) (<< "<<") (number_literal "1"))) () ")")) (goto_statement "goto LAB_00187b5c;" (goto "goto") (statement_identifier "LAB_00187b5c") (; ";"))) (expression_statement "uVar25 = uVar22 + piVar15[5];" (assignment_expression "uVar25 = uVar22 + piVar15[5]" (identifier "uVar25") (= "=") (binary_expression "uVar22 + piVar15[5]" (identifier "uVar22") (+ "+") (subscript_expression "piVar15[5]" (identifier "piVar15") ([ "[") (number_literal "5") (] "]")))) (; ";")) (expression_statement "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];" (assignment_expression "uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" (identifier "uVar21") (= "=") (binary_expression "(uint)(uVar25 < uVar22) + uVar21 + piVar15[4]" (binary_expression "(uint)(uVar25 < uVar22) + uVar21" (call_expression "(uint)(uVar25 < uVar22)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar25 < uVar22)" (( "(") (binary_expression "uVar25 < uVar22" (identifier "uVar25") (< "<") (identifier "uVar22")) () ")"))) (+ "+") (identifier "uVar21")) (+ "+") (subscript_expression "piVar15[4]" (identifier "piVar15") ([ "[") (number_literal "4") (] "]")))) (; ";")) (expression_statement "uVar24 = uVar25;" (assignment_expression "uVar24 = uVar25" (identifier "uVar24") (= "=") (identifier "uVar25")) (; ";")) (expression_statement "uVar27 = uVar21;" (assignment_expression "uVar27 = uVar21" (identifier "uVar27") (= "=") (identifier "uVar21")) (; ";")) (} "}"))) (} "}")))) (if_statement "if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }" (if "if") (parenthesized_expression "(((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25))))" (( "(") (binary_expression "((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))" (parenthesized_expression "((int)local_78 < (int)uVar21)" (( "(") (binary_expression "(int)local_78 < (int)uVar21" (cast_expression "(int)local_78" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_78")) (< "<") (cast_expression "(int)uVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar21"))) () ")")) (|| "||") (parenthesized_expression "((uVar21 == local_78 && (local_54 < uVar25)))" (( "(") (parenthesized_expression "(uVar21 == local_78 && (local_54 < uVar25))" (( "(") (binary_expression "uVar21 == local_78 && (local_54 < uVar25)" (binary_expression "uVar21 == local_78" (identifier "uVar21") (== "==") (identifier "local_78")) (&& "&&") (parenthesized_expression "(local_54 < uVar25)" (( "(") (binary_expression "local_54 < uVar25" (identifier "local_54") (< "<") (identifier "uVar25")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n        local_78 = uVar21;\n        local_54 = uVar25;\n      }" ({ "{") (expression_statement "local_78 = uVar21;" (assignment_expression "local_78 = uVar21" (identifier "local_78") (= "=") (identifier "uVar21")) (; ";")) (expression_statement "local_54 = uVar25;" (assignment_expression "local_54 = uVar25" (identifier "local_54") (= "=") (identifier "uVar25")) (; ";")) (} "}"))) (expression_statement "iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);" (assignment_expression "iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(*piVar15 + 0x18))(piVar15)" (parenthesized_expression "(**(code **)(*piVar15 + 0x18))" (( "(") (pointer_expression "**(code **)(*piVar15 + 0x18)" (* "*") (pointer_expression "*(code **)(*piVar15 + 0x18)" (* "*") (cast_expression "(code **)(*piVar15 + 0x18)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar15 + 0x18)" (( "(") (binary_expression "*piVar15 + 0x18" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (+ "+") (number_literal "0x18")) () ")"))))) () ")")) (argument_list "(piVar15)" (( "(") (identifier "piVar15") () ")")))) (; ";")) (if_statement "if (iVar8 != 0) {\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        piVar15 = (int *)*piVar23;\n        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }\n        *(int *)param_8 = *(int *)param_8 + 1;\n      }" ({ "{") (expression_statement "piVar15 = (int *)*piVar23;" (assignment_expression "piVar15 = (int *)*piVar23" (identifier "piVar15") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (if_statement "if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }\n        else {\n          (**(code **)(*piVar15 + 0x30))();\n        }" (if "if") (parenthesized_expression "(*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4)" (( "(") (binary_expression "*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4" (pointer_expression "*(code **)(*piVar15 + 0x30)" (* "*") (cast_expression "(code **)(*piVar15 + 0x30)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar15 + 0x30)" (( "(") (binary_expression "*piVar15 + 0x30" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (+ "+") (number_literal "0x30")) () ")")))) (== "==") (cast_expression "(code *)PTR_do_set_out_shndx_00432ea4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_do_set_out_shndx_00432ea4"))) () ")")) (compound_statement "{\n          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }\n          piVar15[0x19] = *(int *)param_8;\n        }" ({ "{") (if_statement "if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }" (if "if") (parenthesized_expression "((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19]))" (( "(") (binary_expression "(piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])" (parenthesized_expression "(piVar15[0x19] != -1)" (( "(") (binary_expression "piVar15[0x19] != -1" (subscript_expression "piVar15[0x19]" (identifier "piVar15") ([ "[") (number_literal "0x19") (] "]")) (!= "!=") (number_literal "-1")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)param_8 != piVar15[0x19])" (( "(") (binary_expression "*(int *)param_8 != piVar15[0x19]" (pointer_expression "*(int *)param_8" (* "*") (cast_expression "(int *)param_8" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_8"))) (!= "!=") (subscript_expression "piVar15[0x19]" (identifier "piVar15") ([ "[") (number_literal "0x19") (] "]"))) () ")"))) () ")")) (compound_statement "{\n            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);\n            return uVar32;\n          }" ({ "{") (expression_statement "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000);" (assignment_expression "uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000)" (identifier "uVar32") (= "=") (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000)" (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,0x104b,\n                                PTR_s_alize_xindex_004323b4 + 0x7000)" (( "(") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x4fe0" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x4fe0")) (, ",") (number_literal "0x104b") (, ",") (binary_expression "PTR_s_alize_xindex_004323b4 + 0x7000" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "0x7000")) () ")")))) (; ";")) (return_statement "return uVar32;" (return "return") (identifier "uVar32") (; ";")) (} "}"))) (expression_statement "piVar15[0x19] = *(int *)param_8;" (assignment_expression "piVar15[0x19] = *(int *)param_8" (subscript_expression "piVar15[0x19]" (identifier "piVar15") ([ "[") (number_literal "0x19") (] "]")) (= "=") (pointer_expression "*(int *)param_8" (* "*") (cast_expression "(int *)param_8" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_8")))) (; ";")) (} "}")) (else_clause "else {\n          (**(code **)(*piVar15 + 0x30))();\n        }" (else "else") (compound_statement "{\n          (**(code **)(*piVar15 + 0x30))();\n        }" ({ "{") (expression_statement "(**(code **)(*piVar15 + 0x30))();" (call_expression "(**(code **)(*piVar15 + 0x30))()" (parenthesized_expression "(**(code **)(*piVar15 + 0x30))" (( "(") (pointer_expression "**(code **)(*piVar15 + 0x30)" (* "*") (pointer_expression "*(code **)(*piVar15 + 0x30)" (* "*") (cast_expression "(code **)(*piVar15 + 0x30)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar15 + 0x30)" (( "(") (binary_expression "*piVar15 + 0x30" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (+ "+") (number_literal "0x30")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (expression_statement "*(int *)param_8 = *(int *)param_8 + 1;" (assignment_expression "*(int *)param_8 = *(int *)param_8 + 1" (pointer_expression "*(int *)param_8" (* "*") (cast_expression "(int *)param_8" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_8"))) (= "=") (binary_expression "*(int *)param_8 + 1" (pointer_expression "*(int *)param_8" (* "*") (cast_expression "(int *)param_8" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_8"))) (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "piVar23 = piVar23 + 1;" (assignment_expression "piVar23 = piVar23 + 1" (identifier "piVar23") (= "=") (binary_expression "piVar23 + 1" (identifier "piVar23") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar22 = uVar25;" (assignment_expression "uVar22 = uVar25" (identifier "uVar22") (= "=") (identifier "uVar25")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(*(int **)((int)param_5 + 4) != piVar23)" (( "(") (binary_expression "*(int **)((int)param_5 + 4) != piVar23" (pointer_expression "*(int **)((int)param_5 + 4)" (* "*") (cast_expression "(int **)((int)param_5 + 4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)param_5 + 4)" (( "(") (binary_expression "(int)param_5 + 4" (cast_expression "(int)param_5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_5")) (+ "+") (number_literal "4")) () ")")))) (!= "!=") (identifier "piVar23")) () ")")) (; ";")) (expression_statement "param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14);" (assignment_expression "param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" (identifier "param_4") (= "=") (binary_expression "param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" (identifier "param_4") (+ "+") (call_expression "CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" (identifier "CONCAT44") (argument_list "((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),\n                                 local_54 - uVar14)" (( "(") (binary_expression "(local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14)" (parenthesized_expression "(local_78 - uVar12)" (( "(") (binary_expression "local_78 - uVar12" (identifier "local_78") (- "-") (identifier "uVar12")) () ")")) (- "-") (call_expression "(uint)(local_54 < local_54 - uVar14)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_54 < local_54 - uVar14)" (( "(") (binary_expression "local_54 < local_54 - uVar14" (identifier "local_54") (< "<") (binary_expression "local_54 - uVar14" (identifier "local_54") (- "-") (identifier "uVar14"))) () ")")))) (, ",") (binary_expression "local_54 - uVar14" (identifier "local_54") (- "-") (identifier "uVar14")) () ")"))))) (; ";")) (} "}"))) (expression_statement "*(uint *)param_6 = local_78;" (assignment_expression "*(uint *)param_6 = local_78" (pointer_expression "*(uint *)param_6" (* "*") (cast_expression "(uint *)param_6" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_6"))) (= "=") (identifier "local_78")) (; ";")) (expression_statement "*(uint *)((int)param_6 + 4) = local_54;" (assignment_expression "*(uint *)((int)param_6 + 4) = local_54" (pointer_expression "*(uint *)((int)param_6 + 4)" (* "*") (cast_expression "(uint *)((int)param_6 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_6 + 4)" (( "(") (binary_expression "(int)param_6 + 4" (cast_expression "(int)param_6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_6")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "local_54")) (; ";")) (expression_statement "*param_7 = uVar27;" (assignment_expression "*param_7 = uVar27" (pointer_expression "*param_7" (* "*") (identifier "param_7")) (= "=") (identifier "uVar27")) (; ";")) (expression_statement "param_7[1] = uVar24;" (assignment_expression "param_7[1] = uVar24" (subscript_expression "param_7[1]" (identifier "param_7") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "uVar24")) (; ";")) (return_statement "return param_4;" (return "return") (identifier "param_4") (; ";")) (} "}")))

/* WARNING: Removing unreachable block (ram,0x00187758) */
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */
/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */
/* DWARF original prototype: uint64_t set_section_list_addresses(Output_segment * this, Layout *
   layout, bool reset, Output_data_list * pdl, uint64_t addr, off_t * poff, off_t * pfoff, uint *
   pshndx, bool * in_tls) */

uint64_t __thiscall
var_4::type_1::function_1
          (type_1 *this,type_2 *layout,bool reset,type_3 *pdl,uint64_t var_20,
          type_4 *poff,type_4 *pfoff,type_5 *pshndx,bool *in_tls)

{
  type_6 var_8;
  bool bVar2;
  type_7 lVar3;
  type_8 var_13;
  type_4 oVar5;
  type_9 *puVar6;
  type_9 *puVar7;
  type_10 *pOVar8;
  int var_25;
  int var_11;
  type_5 var_18;
  int var_15;
  type_5 var_19;
  int *var_40;
  type_10 *pOVar15;
  type_11 *var_39;
  type_11 extraout_v1;
  type_5 var_31;
  type_11 extraout_v1_00;
  type_5 extraout_v1_01;
  type_10 *pOVar18;
  type_10 *var_23;
  type_1 *this_00;
  type_12 *var_37;
  type_5 var_33;
  type_13 *puVar21;
  type_14 in_register_00000018;
  type_9 *var_28;
  type_15 **pp_Var23;
  type_5 var_32;
  type_16 var_45;
  type_10 *var_22;
  type_10 *pOVar27;
  type_5 var_41;
  int var_44;
  int var_42;
  type_10 *var_16;
  type_11 *var_38;
  type_10 *var_21;
  type_17 var_3;
  type_10 *var_26;
  type_10 *var_17;
  type_9 *puVar37;
  type_11 uVar38;
  type_5 var_43;
  type_9 *var_24;
  type_15 *p_Var41;
  type_10 *var_9;
  type_18 *pcVar43;
  type_8 var_14;
  type_19 uVar45;
  uint64_t var_46;
  int var_35;
  int var_34;
  type_10 *pOStack_c0;
  type_10 *pOStack_bc;
  type_17 ppOStack_b8;
  type_10 *pOStack_b4;
  type_10 *pOStack_b0;
  type_9 *puStack_ac;
  int iStack_a8;
  type_18 *pcStack_a4;
  type_10 *local_90;
  type_10 *local_8c;
  type_10 *local_88;
  type_10 *local_84;
  type_10 *var_29;
  type_10 *var_27;
  type_10 *var_30;
  
  var_24 = var_6;
  pOVar18 = *(type_10 **)((int)poff + 4);
  var_3 = (pdl->super__Vector_base<var_4::type_10*var_2,var_5::allocator<var_4::type_10*>var_1>var_2).
             _M_impl._M_start;
  pOVar15 = *(type_10 **)poff;
  var_17 = *(type_10 **)pfoff;
  var_26 = *(type_10 **)((int)pfoff + 4);
  var_29 = pOVar15;
  var_30 = pOVar18;
  if (var_3 !=
      (pdl->super__Vector_base<var_4::type_10*,var_5::allocator<var_4::type_10*>var_1>var_2)._M_impl.
      _M_finish) {
    puVar6 = var_6 + 0x5ae4;
    puVar7 = var_6 + 0x5a48;
    pOVar8 = (type_10 *)(var_6 + -0x29ec);
    var_9 = pOVar15;
    var_16 = pOVar15;
    var_21 = pOVar18;
LAB_00187154:
    var_25 = (*(*var_3)->_vptr_Output_data[7])(*var_3,8);
    var_11 = (*(*var_3)->_vptr_Output_data[8])();
    if (var_7(in_register_00000018,reset) != 0) {
      var_23 = *var_3;
      var_8 = var_23->field_0x20;
      var_23->field_0x20 = var_8 & 0x5f;
      var_9 = (type_10 *)-((*(int *)&var_23->field_0x20 << 3) >> 0x1f);
      if (var_9 == (type_10 *)0x0) {
        var_23->field_0x20 = var_8 & 0x1f;
      }
      (*var_23->_vptr_Output_data[0xf])();
    }
    var_40 = (int *)PTR_parameters_00432be0;
    puVar37 = PTR_parameters_00432be0;
    if (-1 < *(int *)&(*var_3)->field_0x20) {
      var_18 = (*(*var_3)->_vptr_Output_data[3])();
      var_13 = var_10(var_18,var_9);
      var_14 = var_10(var_18,var_9);
      if (var_11 == 0) {
        if (*in_tls == false) goto LAB_00187254;
        var_14 = var_12(layout->tls_segment_);
        if (var_13 < var_14) {
          *in_tls = false;
        }
        else {
          *in_tls = false;
          var_14 = var_13;
        }
        var_40 = (int *)PTR_parameters_00432be0;
        var_15 = (*(type_18 *)PTR_incremental_update_00432eb0)(*(type_11 *)PTR_parameters_00432be0);
        if (var_15 != 0) goto LAB_00187604;
LAB_00187268:
        if (var_16 == var_17) goto LAB_001878dc;
        goto LAB_00187270;
      }
      var_14 = var_13;
      if (*in_tls != false) goto LAB_00187254;
      if (layout->tls_segment_ == (type_1 *)0x0) {
        uVar38 = 0x11c4;
        goto LAB_00187b08;
      }
      var_14 = var_12(layout->tls_segment_);
      var_19 = (type_5)(var_14 >> 0x20);
      if (var_18 <= var_19) {
        var_27 = var_9;
        if (var_18 == var_19) goto LAB_00187bac;
        goto LAB_0018723c;
      }
LAB_00187bbc:
      uVar38 = 0x11c6;
      goto LAB_00187b08;
    }
    var_15 = (*(type_18 *)PTR_incremental_update_00432eb0)(*(type_11 *)PTR_parameters_00432be0);
    if (var_15 == 0) {
      var_9 = *var_3;
      if (*(int *)&var_9->field_0x20 < 0) {
        var_18 = *(type_5 *)&var_9->address_;
        lVar3 = var_20 + var_10((type_9 *)
                                ((int)var_16 +
                                (-(type_5)(var_21 < (type_10 *)((int)var_21 - (int)pOVar18)) -
                                (int)pOVar15)),(type_10 *)((int)var_21 - (int)pOVar18));
        var_23 = (type_10 *)lVar3;
        var_19 = (type_5)((type_8)lVar3 >> 0x20);
        var_22 = *(type_10 **)((int)&var_9->address_ + 4);
        if ((var_18 < var_19) || ((var_19 == var_18 && (var_22 < var_23)))) {
          uVar38 = 0x1215;
          if ((layout->script_options_->script_sections_).saw_sections_clause_ == false)
          goto LAB_00187b08;
          var_22 = (type_10 *)(*var_9->_vptr_Output_data[9])(var_9,0x1215);
          var_9 = *var_3;
          if (-1 < *(int *)&var_9->field_0x20) goto LAB_00187bd4;
          pOVar27 = *(type_10 **)((int)&var_9->address_ + 4);
          var_27 = *(type_10 **)&var_9->address_;
          if (var_22 == (type_10 *)0x0) {
            uVar38 = (*(type_18 *)PTR_gettext_00436818)(var_24 + 0x5aa8);
            local_90 = var_27;
            local_8c = pOVar27;
            (*(type_18 *)PTR_gold_error_00432d84)(uVar38);
            var_9 = *var_3;
          }
          else {
            uVar38 = (*(type_18 *)PTR_gettext_00436818)(puVar6);
            local_90 = var_27;
            local_8c = pOVar27;
            (*(type_18 *)PTR_gold_error_00432d84)
                      (uVar38,*(type_11 *)&var_22->field_0x24,var_19,var_23);
            var_9 = *var_3;
            var_27 = var_22;
          }
        }
        else if (var_25 == 0) {
          if (((int)var_17 < (int)var_16) ||
             ((var_26 = (type_10 *)(type_5)(var_26 < var_21), var_16 == var_17 &&
              (var_26 != (type_10 *)0x0)))) {
            uVar38 = (*(type_18 *)PTR_gettext_00436818)(puVar7);
            (*(type_18 *)PTR_gold_warning_0043245c)(uVar38);
            var_9 = *var_3;
            if (-1 < *(int *)&var_9->field_0x20) goto LAB_00187bd4;
            var_18 = *(type_5 *)&var_9->address_;
            var_22 = *(type_10 **)((int)&var_9->address_ + 4);
            var_27 = var_23;
          }
          var_23 = (type_10 *)((int)var_21 - (int)var_23);
          bVar2 = var_21 < var_23;
          var_21 = (type_10 *)((int)&var_23->_vptr_Output_data + (int)var_22);
          var_16 = (type_10 *)
                    ((int)var_16 + (type_5)(var_21 < var_23) + var_18 + (-(type_5)bVar2 - var_19));
          var_26 = var_21;
          var_17 = var_16;
        }
        else {
          var_23 = (type_10 *)((int)var_21 - (int)var_23);
          bVar2 = var_21 < var_23;
          var_21 = (type_10 *)((int)&var_23->_vptr_Output_data + (int)var_22);
          if (var_11 != 0) {
            var_26 = var_21;
          }
          var_16 = (type_10 *)
                    ((int)var_16 + (type_5)(var_21 < var_23) + var_18 + (-(type_5)bVar2 - var_19));
          if (var_11 != 0) {
            var_17 = var_16;
          }
        }
        var_14 = var_10(var_19,var_9);
        if (*(int *)&var_9->field_0x20 << 2 < 0) goto LAB_00187b94;
        var_8 = var_9->field_0x20;
        *(type_10 **)&var_9->offset_ = var_17;
        *(type_10 **)((int)&var_9->offset_ + 4) = var_26;
        var_9->field_0x20 = var_8 & 0xdf | 0x20;
        var_23 = var_26;
        var_22 = var_17;
        if (-1 < *(int *)&var_9->field_0x20 << 1) {
          (*var_9->_vptr_Output_data[0xe])(var_9);
          var_15 = *(int *)&var_9->field_0x20;
          var_27 = var_9;
          goto joined_r0x001878b8;
        }
LAB_0018736c:
        var_17 = var_22;
        var_15 = (*(type_18 *)PTR_incremental_update_00432eb0)(*var_40);
        var_26 = var_23;
        if (var_15 == 0) {
LAB_00187410:
          var_9 = *var_3;
        }
        else {
          var_39 = (type_11 *)*var_40;
          var_9 = *var_3;
          if ((var_39[2] != 0) && ((var_39[5] & 0x10) != 0)) {
            uVar38 = *var_39;
            if (-1 < *(int *)&var_9->field_0x20 << 1) goto LAB_00187b5c;
            oVar5 = var_9->data_size_;
            var_15 = (*var_9->_vptr_Output_data[9])(var_9);
            var_9 = pOVar8;
            if (var_15 != 0) {
              var_15 = (*(*var_3)->_vptr_Output_data[9])(*var_3);
              var_9 = *(type_10 **)(var_15 + 0x24);
            }
            local_90 = var_9;
            (*(type_18 *)PTR_debug_00432ce0)(uVar38,var_24 + 0x5b24,var_21,(int)oVar5);
            goto LAB_00187410;
          }
        }
        if (var_11 == 0) {
          if (*(int *)&var_9->field_0x20 << 1 < 0) {
            var_23 = (type_10 *)((int)&var_21->_vptr_Output_data + (int)var_9->data_size_);
            if (var_25 == 0) {
              var_26 = var_23;
            }
            var_16 = (type_10 *)
                      ((int)&var_16->_vptr_Output_data +
                      (type_5)(var_23 < var_21) + *(int *)&var_9->data_size_);
            if (var_25 == 0) {
              var_17 = var_16;
            }
            goto LAB_00187458;
          }
        }
        else {
          var_23 = var_21;
          if (var_25 != 0) goto LAB_00187458;
          if (*(int *)&var_9->field_0x20 << 1 < 0) goto code_r0x00187434;
        }
LAB_00187b5c:
        (*(type_18 *)PTR_do_gold_unreachable_004323c4)
                  (var_6 + -0x4fe0,0xcf,var_6 + 0x7894);
LAB_00187b74:
        (*(type_18 *)PTR_do_gold_unreachable_004323c4)
                  (var_6 + -0x4fe0,0x142,var_6 + 0x7540)
        ;
LAB_00187b94:
        do {
          var_14 = (*(type_18 *)PTR_do_gold_unreachable_004323c4)
                             (var_6 + -0x4fe0,0x14b,
                              var_6 + 30000);
LAB_00187bac:
          if ((type_10 *)var_14 < var_27) goto LAB_00187bbc;
LAB_0018723c:
          *in_tls = true;
LAB_00187254:
          var_40 = (int *)PTR_parameters_00432be0;
          var_15 = (*(type_18 *)PTR_incremental_update_00432eb0)
                             (*(type_11 *)PTR_parameters_00432be0);
          if (var_15 == 0) goto LAB_00187268;
LAB_00187604:
          var_27 = (type_10 *)var_14;
          var_17 = *var_3;
          if (-1 < *(int *)&var_17->field_0x20 << 1) {
            (*var_17->_vptr_Output_data[0xd])(var_17);
            var_17 = *var_3;
          }
          var_26 = *(type_10 **)&var_17->data_size_;
          oVar5 = var_17->data_size_;
          local_8c = var_27;
          local_90 = (type_10 *)(var_14 >> 0x20);
          local_88 = pOVar15;
          local_84 = pOVar18;
          uVar45 = (*(type_18 *)PTR_allocate_00432eb4)(&layout->free_list_);
          var_16 = (type_10 *)((type_8)uVar45 >> 0x20);
          var_21 = (type_10 *)uVar45;
          if (var_16 == (type_10 *)0xffffffff) goto LAB_00187acc;
          while( true ) {
            var_17 = *var_3;
            if (*(int *)&var_17->field_0x20 < 0) goto LAB_00187b74;
            var_8 = var_17->field_0x20;
            var_17->address_ =
                 var_20 + var_10((type_9 *)
                                 ((int)var_16 +
                                 (-(type_5)(var_21 < (type_10 *)((int)var_21 - (int)pOVar18)) -
                                 (int)pOVar15)),(type_10 *)((int)var_21 - (int)pOVar18));
            var_17->field_0x20 = var_8 & 0x7f | 0x80;
            if (*(int *)&var_17->field_0x20 << 2 < 0) break;
            *(type_10 **)&var_17->offset_ = var_16;
            *(type_10 **)((int)&var_17->offset_ + 4) = var_21;
            var_17->field_0x20 = var_8 & 0x5f | 0xa0;
            if (-1 < *(int *)&var_17->field_0x20 << 1) {
              (*var_17->_vptr_Output_data[0xe])(var_17);
              if (-1 < *(int *)&var_17->field_0x20 << 1) goto LAB_001878c0;
              var_17 = *var_3;
              if (-1 < *(int *)&var_17->field_0x20 << 1) goto LAB_00187b5c;
            }
            if (((int)*(type_10 **)&var_17->data_size_ <= (int)var_26) &&
               ((var_23 = var_21, var_22 = var_16,
                *(type_10 **)&var_17->data_size_ != var_26 ||
                (var_26 = (type_10 *)(type_5)((type_5)oVar5 < (type_5)var_17->data_size_),
                var_26 == (type_10 *)0x0)))) goto LAB_0018736c;
            var_15 = (*var_17->_vptr_Output_data[9])(var_17);
            if (var_15 == 0) {
              uVar38 = 0x11f6;
              goto LAB_00187b08;
            }
            puVar37 = var_6 + -0x299c;
            while( true ) {
              uVar38 = (*(type_18 *)PTR_gettext_00436818)(puVar37);
              var_15 = (*(*var_3)->_vptr_Output_data[9])(*var_3);
              (*(type_18 *)PTR_gold_fallback_00432ebc)(uVar38,*(type_11 *)(var_15 + 0x24));
              uVar45 = var_10(uVar38,extraout_v1);
LAB_00187acc:
              var_16 = (type_10 *)((type_8)uVar45 >> 0x20);
              if ((type_10 *)uVar45 != var_16) break;
              var_15 = (*(*var_3)->_vptr_Output_data[9])(*var_3);
              if (var_15 == 0) {
                do {
                  uVar38 = 0x11ee;
LAB_00187b08:
                  (*(type_18 *)PTR_do_gold_unreachable_004323c4)
                            (var_6 + 0x59f0,uVar38,
                             var_6 + 0x7014);
                } while( true );
              }
              puVar37 = var_6 + -0x29e0;
            }
          }
        } while( true );
      }
LAB_00187bd4:
      var_28 = var_6 + 0x7850;
      (*(type_18 *)PTR_do_gold_unreachable_004323c4)
                (var_6 + -0x4fe0,0xc5,var_28);
    }
    else {
      var_9 = *var_3;
      var_28 = var_6;
      if (*(int *)&var_9->field_0x20 << 2 < 0) {
        var_16 = *(type_10 **)&var_9->offset_;
        var_21 = *(type_10 **)((int)&var_9->offset_ + 4);
        var_23 = var_21;
        var_22 = var_16;
        goto LAB_0018736c;
      }
    }
    var_18 = 0xe3;
    pcVar43 = set_offset;
    this_00 = (type_1 *)(var_6 + -0x4fe0);
    var_24 = PTR_do_gold_unreachable_004323c4;
    (*(type_18 *)PTR_do_gold_unreachable_004323c4)(this_00,0xe3,var_28 + 0x7818);
    pOStack_c0 = var_16;
    pOStack_bc = var_21;
    ppOStack_b8 = var_3;
    pOStack_b4 = var_26;
    pOStack_b0 = var_17;
    puStack_ac = puVar37;
    iStack_a8 = var_25;
    pcStack_a4 = pcVar43;
    if (this_00->type_ == 1) {
      puVar21 = (type_13 *)0x1255;
      goto LAB_001882ec;
    }
    if (*(int *)&this_00->field_0x1a0 << 1 < 0) goto LAB_001882e8;
    var_3 = this_00->output_lists_[0].
               super__Vector_base<var_4::type_10*,var_5::allocator<var_4::type_10*>var_1>._M_impl.
               _M_start;
    if (this_00->output_lists_[0].
        super__Vector_base<var_4::type_10*,var_5::allocator<var_4::type_10*>var_1>._M_impl.
        _M_finish != var_3) {
      var_26 = (type_10 *)0x0;
      var_34 = 0;
      var_35 = 0;
      goto LAB_00187c80;
    }
    puVar21 = (type_13 *)0x125f;
    if (var_18 == 0) {
      var_18 = (type_6)this_00->field_0x1a0 & 0xffffffbf | 0x40;
      *(type_11 *)((int)&this_00->vaddr_ + 4) = 0;
      *(type_11 *)&this_00->vaddr_ = 0;
      *(type_11 *)((int)&this_00->paddr_ + 4) = 0;
      *(type_11 *)&this_00->paddr_ = 0;
      this_00->field_0x1a0 = (char)var_18;
      *(type_11 *)((int)&this_00->memsz_ + 4) = 0;
      *(type_11 *)&this_00->memsz_ = 0;
      *(type_11 *)((int)&this_00->min_p_align_ + 4) = 0;
      *(type_11 *)&this_00->min_p_align_ = 0;
      *(type_11 *)((int)&this_00->offset_ + 4) = 0;
      *(type_11 *)&this_00->offset_ = 0;
      *(type_11 *)((int)&this_00->filesz_ + 4) = 0;
      *(type_11 *)&this_00->filesz_ = 0;
      return var_10(var_18,1);
    }
    goto LAB_001882ec;
  }
LAB_00187518:
  *(type_10 **)poff = var_29;
  *(type_10 **)((int)poff + 4) = var_30;
  *(type_10 **)pfoff = var_17;
  *(type_10 **)((int)pfoff + 4) = var_26;
  return var_20;
code_r0x00187434:
  var_23 = (type_10 *)((int)&var_21->_vptr_Output_data + (int)var_9->data_size_);
  var_16 = (type_10 *)
            ((int)&var_16->_vptr_Output_data +
            (type_5)(var_23 < var_21) + *(int *)&var_9->data_size_);
  var_26 = var_23;
  var_17 = var_16;
LAB_00187458:
  if (((int)var_29 < (int)var_16) || ((var_16 == var_29 && (var_30 < var_23)))) {
    var_29 = var_16;
    var_30 = var_23;
  }
  var_25 = (*var_9->_vptr_Output_data[6])(var_9);
  if (var_25 != 0) {
    var_9 = *var_3;
    if (var_9->_vptr_Output_data[0xc] == (type_15 *)PTR_do_set_out_shndx_00432ea4) {
      var_18 = (type_5)var_9[2].data_size_;
      if ((var_18 != 0xffffffff) && (*pshndx != var_18)) {
        (*(type_18 *)PTR_do_gold_unreachable_004323c4)
                  (var_6 + -0x4fe0,0x104b,var_6 + 0x7000
                  );
        var_29 = pOVar15;
        var_30 = pOVar18;
        goto LAB_00187518;
      }
      *(type_5 *)((int)&var_9[2].data_size_ + 4) = *pshndx;
    }
    else {
      (*var_9->_vptr_Output_data[0xc])();
    }
    *pshndx = *pshndx + 1;
  }
  var_3 = var_3 + 1;
  var_9 = var_30;
  var_21 = var_23;
  if ((pdl->super__Vector_base<var_4::type_10*,var_5::allocator<var_4::type_10*>var_1>var_2)._M_impl.
      _M_finish == var_3) goto code_r0x001874e4;
  goto LAB_00187154;
code_r0x001874e4:
  var_20 = var_20 + var_10((type_9 *)
                         ((int)var_29 +
                         (-(type_5)(var_30 < (type_10 *)((int)var_30 - (int)pOVar18)) -
                         (int)pOVar15)),(type_10 *)((int)var_30 - (int)pOVar18));
  goto LAB_00187518;
LAB_001878c0:
  (*(type_18 *)PTR_do_gold_unreachable_004323c4)
            (var_6 + -0x4fe0,0x163,var_6 + 0x751c);
LAB_001878dc:
  var_27 = (type_10 *)var_14;
  if (var_21 == var_26) {
    var_18 = (type_5)(var_14 >> 0x20) | (type_5)var_27;
    var_9 = var_26;
    var_23 = var_17;
  }
  else {
LAB_00187270:
    var_27 = (type_10 *)var_14;
    if (var_25 == 0) {
      uVar38 = 0x11df;
      goto LAB_00187b08;
    }
    var_18 = (type_5)(var_14 >> 0x20) | (type_5)var_27;
    var_9 = var_26;
    var_23 = var_17;
  }
  var_27 = (type_10 *)var_14;
  if (var_18 != 0) {
    lVar3 = var_14 + var_10((type_9 *)
                              ((int)var_16 + ((&var_21[-1].field_0x27 < var_21) - 1)),
                              &var_21[-1].field_0x27);
    var_21 = (type_10 *)((type_5)lVar3 & -(int)var_27);
    var_16 = (type_10 *)
              ((type_5)((type_8)lVar3 >> 0x20) &
              -(type_5)(-(int)var_27 != 0) - (int)(var_14 >> 0x20));
  }
  var_26 = var_21;
  var_17 = var_16;
  if ((var_11 == 0) && (var_26 = var_9, var_17 = var_23, var_25 == 0)) {
    var_26 = var_21;
    var_17 = var_16;
  }
  var_9 = *var_3;
  var_14 = var_10(var_9,var_27);
  if (*(int *)&var_9->field_0x20 < 0) goto LAB_00187b74;
  var_8 = var_9->field_0x20;
  var_9->address_ =
       var_20 + var_10((type_9 *)
                       ((int)var_16 +
                       (-(type_5)(var_21 < (type_10 *)((int)var_21 - (int)pOVar18)) -
                       (int)pOVar15)),(type_10 *)((int)var_21 - (int)pOVar18));
  var_9->field_0x20 = var_8 & 0x7f | 0x80;
  if (*(int *)&var_9->field_0x20 << 2 < 0) goto LAB_00187b94;
  *(type_10 **)&var_9->offset_ = var_17;
  *(type_10 **)((int)&var_9->offset_ + 4) = var_26;
  var_9->field_0x20 = var_8 & 0x5f | 0xa0;
  var_23 = var_26;
  var_22 = var_17;
  if (*(int *)&var_9->field_0x20 << 1 < 0) goto LAB_0018736c;
  (*var_9->_vptr_Output_data[0xe])(var_9);
  var_15 = *(int *)&var_9->field_0x20;
joined_r0x001878b8:
  var_23 = var_26;
  var_22 = var_17;
  if (var_15 << 1 < 0) goto LAB_0018736c;
  goto LAB_001878c0;
LAB_00187c80:
  do {
    var_17 = *var_3;
    if (var_26 == (type_10 *)0x0) {
LAB_00187f58:
      var_26 = var_17;
    }
    else {
      var_25 = *(int *)(var_24 + 0x2aa7ac);
      if (-1 < *(int *)&var_17->field_0x20) goto LAB_001882b4;
      var_19 = *(type_5 *)&var_17->address_;
      var_32 = (type_5)var_17->address_;
      if (-1 < *(int *)&var_26->field_0x20) goto LAB_001882b0;
      var_31 = *(type_5 *)&var_26->address_;
      var_33 = (type_5)var_26->address_;
      if ((var_19 < var_31) || ((var_31 == var_19 && (var_32 < var_33)))) goto LAB_00187f58;
      if ((var_31 == var_19) && (var_33 == var_32)) {
        if (-1 < *(int *)&var_17->field_0x20 << 1) goto LAB_001882cc;
        if (-1 < *(int *)&var_26->field_0x20 << 1) goto LAB_001882cc;
        if ((*(int *)&var_17->data_size_ < *(int *)&var_26->data_size_) ||
           ((*(int *)&var_26->data_size_ == *(int *)&var_17->data_size_ &&
            ((type_5)var_17->data_size_ < (type_5)var_26->data_size_)))) goto LAB_00187f58;
      }
    }
    var_25 = (*var_17->_vptr_Output_data[6])();
    if ((var_25 == 0) ||
       (var_25 = (*(*var_3)->_vptr_Output_data[9])(*var_3), *(int *)(var_25 + 0x54) != 8)) {
      var_17 = *var_3;
      var_11 = var_34;
      var_40 = &var_34;
      if (var_34 != 0) goto LAB_00187d18;
LAB_00187f0c:
      *var_40 = (int)var_17;
    }
    else {
      var_17 = *var_3;
      var_11 = var_35;
      var_40 = &var_35;
      if (var_35 == 0) goto LAB_00187f0c;
LAB_00187d18:
      var_25 = *(int *)(var_24 + 0x2aa7ac);
      if (-1 < *(int *)&var_17->field_0x20) goto LAB_001882b4;
      var_19 = *(type_5 *)&var_17->address_;
      var_32 = (type_5)var_17->address_;
      if (-1 < *(int *)(var_11 + 0x20)) goto LAB_001882b0;
      var_31 = *(type_5 *)(var_11 + 8);
      if ((var_31 < var_19) || ((var_19 == var_31 && (*(type_5 *)(var_11 + 0xc) < var_32))))
      goto LAB_00187f0c;
      if ((var_19 == var_31) && (var_32 == *(type_5 *)(var_11 + 0xc))) {
        if (-1 < *(int *)&var_17->field_0x20 << 1) goto LAB_001882cc;
        if (-1 < *(int *)(var_11 + 0x20) << 1) goto LAB_001882cc;
        if (*(int *)(var_11 + 0x10) < *(int *)&var_17->data_size_) goto LAB_00187f0c;
        if ((*(int *)(var_11 + 0x10) == *(int *)&var_17->data_size_) &&
           (*(type_5 *)(var_11 + 0x14) < (type_5)var_17->data_size_)) {
          *var_40 = (int)var_17;
        }
      }
    }
    var_3 = var_3 + 1;
  } while (this_00->output_lists_[0].
           super__Vector_base<var_4::type_10*,var_5::allocator<var_4::type_10*>var_1>._M_impl.
           _M_finish != var_3);
  var_25 = *(int *)(var_24 + 0x2aa7ac);
  if (-1 < *(int *)&var_26->field_0x20) {
LAB_001882b4:
    (**(type_18 **)(var_24 + 0x2aa7bc))(*(int *)(var_24 + 0x2aa7ac) + -0x4fe0,0xc5,var_25 + 0x7850);
    goto LAB_001882cc;
  }
  uVar38 = *(type_11 *)&var_26->address_;
  p_Var41 = var_26->_vptr_Output_data[4];
  *(int *)((int)&this_00->vaddr_ + 4) = (int)var_26->address_;
  *(type_11 *)&this_00->vaddr_ = uVar38;
  var_25 = (*p_Var41)(var_26);
  if (var_25 == 0) {
    pp_Var23 = *(type_15 ***)((int)&this_00->vaddr_ + 4);
    var_25 = *(int *)&this_00->vaddr_;
LAB_00187da8:
    var_11 = *(int *)&var_26->field_0x20;
    var_8 = this_00->field_0x1a0;
    *(type_15 ***)((int)&this_00->paddr_ + 4) = pp_Var23;
    *(int *)&this_00->paddr_ = var_25;
    this_00->field_0x1a0 = var_8 & 0xbf | 0x40;
    if (-1 < var_11 << 2) {
      pcVar43 = *(type_18 **)(var_24 + 0x2aa7bc);
      (*pcVar43)(*(int *)(var_24 + 0x2aa7ac) + -0x4fe0,0xe3,*(int *)(var_24 + 0x2aa7ac) + 0x7818);
LAB_00188350:
      var_37 = (type_12 *)(*(int *)(var_24 + 0x2aa7ac) + -0x5cec);
      (*pcVar43)(var_37,0x69,*(int *)(var_24 + 0x2aa7ac) + 0x78f8);
LAB_00188368:
      var_25 = *(int *)(var_24 + 0x2acab0) + 0x2a90;
      Target::var_36(var_37);
      if (*(int *)(var_37 + 0x198) == 7) {
        var_38 = *(type_11 **)var_37;
        var_39 = *(type_11 **)(var_37 + 4);
        uVar38 = 7;
        if (var_38 != var_39) {
          do {
            var_40 = (int *)*var_38;
            var_38 = var_38 + 1;
            (**(type_18 **)(*var_40 + 0x44))(var_40);
            var_39 = *(type_11 **)(var_37 + 4);
            uVar38 = extraout_v1_00;
          } while (var_39 != var_38);
        }
        return var_10(var_39,uVar38);
      }
      var_11 = *(int *)(var_25 + 0x2aa03c) + 0x59f0;
      (**(type_18 **)(var_25 + 0x2aa04c))(var_11,0x12bb,*(int *)(var_25 + 0x2aa03c) + 0x6fd4);
      var_40 = (int *)(var_11 + 4);
      var_18 = extraout_v1_01;
      do {
        var_39 = (type_11 *)var_40[-1];
        if (var_39 != (type_11 *)*var_40) {
          do {
            uVar45 = (**(type_18 **)(*(int *)*var_39 + 0x18))((int *)*var_39);
            var_18 = (type_5)uVar45;
            if ((int)((type_8)uVar45 >> 0x20) != 0) {
                    /* WARNING: Could not recover jumptable at 0x00188490. Too many branches */
                    /* WARNING: Treating indirect jump as call */
              var_46 = (**(type_18 **)(*(int *)*var_39 + 0x24))((int *)*var_39);
              return var_46;
            }
            var_39 = var_39 + 1;
          } while ((type_11 *)*var_40 != var_39);
        }
        var_40 = var_40 + 3;
      } while (var_40 != (int *)(var_11 + 0x160));
      return (uint64_t)var_18;
    }
    uVar38 = *(type_11 *)&var_26->offset_;
    *(int *)((int)&this_00->offset_ + 4) = (int)var_26->offset_;
    *(type_11 *)&this_00->offset_ = uVar38;
    if (var_34 == 0) {
      *(type_11 *)((int)&this_00->filesz_ + 4) = 0;
      *(type_11 *)&this_00->filesz_ = 0;
LAB_00187e40:
      if (-1 < *(int *)(var_35 + 0x20)) {
LAB_001882b0:
        var_25 = *(int *)(var_24 + 0x2aa7ac);
        goto LAB_001882b4;
      }
      var_25 = *(int *)(var_35 + 8);
      var_19 = *(type_5 *)(var_35 + 0xc);
      if (*(int *)(var_35 + 0x20) << 1 < 0) {
        var_15 = *(int *)&this_00->vaddr_;
        var_31 = (type_5)this_00->vaddr_;
        var_11 = var_35;
LAB_00187e60:
        var_32 = var_18 - var_31;
        var_42 = *(int *)(var_11 + 0x10);
        var_41 = (type_5)this_00->filesz_;
        var_44 = *(int *)&this_00->filesz_;
        var_19 = var_32 + var_19;
        var_45 = this_00->type_;
        var_33 = var_19 + *(int *)(var_11 + 0x14);
        var_43 = var_41 + var_18;
        *(type_5 *)((int)&this_00->memsz_ + 4) = var_33;
        *(type_5 *)((int)&this_00->filesz_ + 4) = var_43;
        var_25 = (type_5)(var_33 < var_19) +
                (type_5)(var_19 < var_32) + ((var_25 - (type_5)(var_18 < var_32)) - var_15) + var_42;
        *(int *)&this_00->memsz_ = var_25;
        var_18 = 0x6474e552;
        *(type_5 *)&this_00->filesz_ = (type_5)(var_43 < var_41) + var_44;
        if (var_45 == 0x6474e552) {
          var_37 = (type_12 *)**(int **)(var_24 + 0x2aafd8);
          pcVar43 = *(type_18 **)(var_24 + 0x2aa7bc);
          if (*(int *)(var_37 + 0xc) == 0) goto LAB_00188350;
          var_11 = *(int *)(var_37 + 8);
          var_33 = var_31 + var_33;
          if (var_11 == 0) goto LAB_00188368;
          var_44 = *(int *)(var_11 + 0x5228);
          var_11 = *(int *)(var_11 + 0x522c);
          var_19 = (type_5)(var_33 < var_31) + var_15 + var_25;
          if (var_44 == 0 && var_11 == 0) {
            var_25 = *(int *)(*(int *)(var_37 + 0xc) + 4);
            var_44 = *(int *)(var_25 + 0x20);
            var_11 = *(int *)(var_25 + 0x24);
            uVar45 = (**(type_18 **)(var_24 + 0x2ab2a8))();
            var_18 = (type_5)uVar45;
            if ((int)((type_8)uVar45 >> 0x20) != 0) {
              if (var_44 != 0 || var_11 != 0) goto LAB_00188264;
              goto LAB_001881ec;
            }
            if (var_44 == 0 && var_11 == 0) {
              var_45 = this_00->type_;
              goto joined_r0x001880f8;
            }
          }
          else {
            var_25 = (**(type_18 **)(var_24 + 0x2ab2a8))();
            if (var_25 != 0) {
LAB_00188264:
              var_18 = var_33 - 1;
              bVar2 = var_18 < var_33;
              var_33 = var_18 + var_11 & -var_11;
              var_19 = (type_5)(var_18 + var_11 < var_18) + (type_5)bVar2 + (var_19 - 1) + var_44 &
                       -(type_5)(-var_11 != 0) - var_44;
LAB_001881ec:
              var_25 = *(int *)&this_00->vaddr_;
              var_45 = this_00->type_;
              var_18 = var_33 - (int)this_00->vaddr_;
              *(type_5 *)((int)&this_00->memsz_ + 4) = var_18;
              *(type_5 *)&this_00->memsz_ = (var_19 - var_25) - (type_5)(var_33 < var_18);
              goto joined_r0x001880f8;
            }
          }
          var_32 = var_33 - 1;
          var_18 = -(type_5)(-var_11 != 0) - var_44;
          if (((type_5)(var_32 + var_11 < var_32) + (type_5)(var_32 < var_33) + (var_19 - 1) + var_44 &
              var_18) != var_19) goto LAB_00188324;
          puVar21 = &DAT_000012a8;
          if ((var_32 + var_11 & -var_11) != var_33) goto LAB_001882ec;
          var_45 = this_00->type_;
        }
joined_r0x001880f8:
        if (var_45 != 7) {
          return var_10(7,var_18);
        }
        var_46 = var_12(this_00);
        if (var_46 == 0) {
          var_19 = *(type_5 *)&this_00->memsz_;
          var_18 = (type_5)this_00->memsz_;
          *(type_5 *)&this_00->memsz_ = var_19;
          *(type_5 *)((int)&this_00->memsz_ + 4) = var_18;
        }
        else {
          var_32 = (type_5)this_00->vaddr_;
          var_18 = -(int)var_46;
          lVar3 = var_46 + var_10((type_5)(var_32 - 1 < var_32) + (*(type_5 *)&this_00->vaddr_ - 1),
                                    var_32 - 1);
          var_19 = -(type_5)(var_18 != 0) - (int)(var_46 >> 0x20);
          if (*(type_5 *)&this_00->vaddr_ != ((type_5)((type_8)lVar3 >> 0x20) & var_19))
          goto LAB_00188304;
          puVar21 = (type_13 *)0x12b1;
          if (var_32 != ((type_5)lVar3 & var_18)) goto LAB_001882ec;
          var_31 = (type_5)this_00->memsz_;
          var_32 = var_31 - 1;
          lVar3 = var_46 + var_10((type_5)(var_32 < var_31) + *(int *)&this_00->memsz_ + -1,var_32);
          var_18 = (type_5)lVar3 & var_18;
          var_19 = (type_5)((type_8)lVar3 >> 0x20) & var_19;
          *(type_5 *)((int)&this_00->memsz_ + 4) = var_18;
          *(type_5 *)&this_00->memsz_ = var_19;
        }
        return var_10(var_18,var_19);
      }
    }
    else {
      var_25 = *(int *)(var_24 + 0x2aa7ac);
      if (-1 < *(int *)(var_34 + 0x20)) goto LAB_001882b4;
      var_25 = *(int *)(var_34 + 8);
      var_19 = *(type_5 *)(var_34 + 0xc);
      if (*(int *)(var_34 + 0x20) << 1 < 0) {
        var_11 = *(int *)(var_34 + 0x10);
        var_31 = (type_5)this_00->vaddr_;
        var_32 = var_19 + *(int *)(var_34 + 0x14);
        var_15 = *(int *)&this_00->vaddr_;
        *(type_5 *)((int)&this_00->filesz_ + 4) = var_32 - var_31;
        *(type_5 *)&this_00->filesz_ =
             (((type_5)(var_32 < var_19) + var_25 + var_11) - var_15) -
             (type_5)(var_32 < var_32 - var_31);
        var_11 = var_34;
        if (var_35 != 0) goto LAB_00187e40;
        goto LAB_00187e60;
      }
    }
LAB_001882cc:
    (**(type_18 **)(var_24 + 0x2aa7bc))
              (*(int *)(var_24 + 0x2aa7ac) + -0x4fe0,0xcf,*(int *)(var_24 + 0x2aa7ac) + 0x7894);
LAB_001882e8:
    puVar21 = (type_13 *)0x1257;
  }
  else {
    pp_Var23 = var_26->_vptr_Output_data;
    if (pp_Var23[5] != *(type_15 **)(var_24 + 0x2ac750)) {
      var_25 = (*pp_Var23[5])(var_26);
      goto LAB_00187da8;
    }
    if (*(int *)&var_26[3].field_0x20 << 7 < 0) {
      pp_Var23 = *(type_15 ***)((int)&var_26[1].data_size_ + 4);
      var_25 = *(int *)&var_26[1].data_size_;
      goto LAB_00187da8;
    }
    (**(type_18 **)(var_24 + 0x2aa7bc))
              (*(int *)(var_24 + 0x2aa7ac) + -0x4fe0,&DAT_0000107b,
               *(int *)(var_24 + 0x2aa7ac) + 0x6fe4);
LAB_00188324:
    puVar21 = &DAT_000012a8;
  }
LAB_001882ec:
  do {
    (**(type_18 **)(var_24 + 0x2aa7bc))
              (*(int *)(var_24 + 0x2aa7ac) + 0x59f0,puVar21,*(int *)(var_24 + 0x2aa7ac) + 0x6ff4);
LAB_00188304:
    puVar21 = (type_13 *)0x12b1;
  } while( true );
}


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

/* WARNING: Removing unreachable block (ram,0x00187758) */
/* WARNING: Removing unreachable block (ram,0x00187bac) */
/* gold::Output_segment::MASKED(gold::Layout*, bool,
   std::vector<gold::Output_data*, std::allocator<gold::Output_data*> >*, unsigned long long, long
   long*, long long*, unsigned int*, bool*) */

ulonglong gold::Output_segment::MASKED
                    (Layout *param_1,bool param_2,vector *param_3,ulonglong param_4,
                    longlong *param_5,longlong *param_6,uint *param_7,bool *param_8)

{
  byte bVar1;
  bool bVar2;
  longlong lVar3;
  undefined *puVar4;
  undefined *puVar5;
  undefined *puVar6;
  undefined *puVar7;
  int iVar8;
  int iVar9;
  int iVar10;
  undefined4 uVar11;
  uint uVar12;
  undefined4 *puVar13;
  undefined4 extraout_v1;
  uint uVar14;
  int *piVar15;
  undefined *puVar16;
  undefined3 in_register_00000014;
  int iVar17;
  uint uVar18;
  uint uVar19;
  undefined4 uVar20;
  uint uVar21;
  uint uVar22;
  int *piVar23;
  uint uVar24;
  uint uVar25;
  uint uVar26;
  uint uVar27;
  undefined4 uVar28;
  int *piVar29;
  int iVar30;
  uint uVar31;
  ulonglong uVar32;
  ulonglong uVar33;
  undefined8 uVar34;
  char *in_stack_00000024;
  uint local_78;
  uint local_54;
  
  puVar4 = PTR_s_alize_xindex_004323b4;
  iVar17 = CONCAT31(in_register_00000014,param_2);
  uVar14 = (uint)*param_6;
  piVar23 = *(int **)param_5;
  uVar12 = *(uint *)param_6;
  uVar27 = *param_7;
  uVar24 = param_7[1];
  local_78 = uVar12;
  local_54 = uVar14;
  if (piVar23 != *(int **)((int)param_5 + 4)) {
    puVar5 = PTR_s_alize_xindex_004323b4 + 0x5ae4;
    puVar6 = PTR_s_alize_xindex_004323b4 + 0x5a48;
    puVar7 = PTR_s_alize_xindex_004323b4 + -0x29ec;
    uVar21 = uVar12;
    uVar22 = uVar14;
    do {
      iVar8 = (**(code **)(*(int *)*piVar23 + 0x1c))((int *)*piVar23,8);
      iVar9 = (**(code **)(*(int *)*piVar23 + 0x20))();
      if (param_3 != (vector *)0x0) {
        piVar15 = (int *)*piVar23;
        bVar1 = *(byte *)(piVar15 + 8);
        *(byte *)(piVar15 + 8) = bVar1 & 0x5f;
        if (-1 < piVar15[8] << 3) {
          *(byte *)(piVar15 + 8) = bVar1 & 0x1f;
        }
        (**(code **)(*piVar15 + 0x3c))();
      }
      piVar15 = (int *)PTR_parameters_00432be0;
      uVar25 = uVar27;
      if (((int *)*piVar23)[8] < 0) {
        iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*(undefined4 *)PTR_parameters_00432be0);
        if (iVar10 == 0) {
          piVar29 = (int *)*piVar23;
          if (-1 < piVar29[8]) {
LAB_00187bd4:
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xc5,
                                PTR_s_alize_xindex_004323b4 + 0x7850);
            return uVar32;
          }
          uVar26 = piVar29[2];
          lVar3 = param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),
                                     uVar22 - uVar14);
          uVar18 = (uint)lVar3;
          uVar31 = (uint)((ulonglong)lVar3 >> 0x20);
          uVar19 = piVar29[3];
          if ((uVar26 < uVar31) || ((uVar31 == uVar26 && (uVar19 < uVar18)))) {
            uVar28 = 0x1215;
            if (*(char *)(*(int *)(iVar17 + 4) + 0xac) == '\0') goto LAB_00187b08;
            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29,0x1215);
            iVar30 = *piVar23;
            if (-1 < *(int *)(iVar30 + 0x20)) goto LAB_00187bd4;
            uVar20 = *(undefined4 *)(iVar30 + 0xc);
            uVar28 = *(undefined4 *)(iVar30 + 8);
            if (iVar10 == 0) {
              uVar28 = (*(code *)PTR_gettext_00436818)(puVar4 + 0x5aa8);
              (*(code *)PTR_gold_error_00432d84)(uVar28);
              piVar29 = (int *)*piVar23;
            }
            else {
              uVar11 = (*(code *)PTR_gettext_00436818)(puVar5);
              (*(code *)PTR_gold_error_00432d84)
                        (uVar11,*(undefined4 *)(iVar10 + 0x24),uVar31,uVar18,uVar28,uVar20);
              piVar29 = (int *)*piVar23;
            }
          }
          else if (iVar8 == 0) {
            if (((int)uVar27 < (int)uVar21) || ((uVar21 == uVar27 && (uVar24 < uVar22)))) {
              uVar28 = (*(code *)PTR_gettext_00436818)(puVar6);
              (*(code *)PTR_gold_warning_0043245c)(uVar28);
              piVar29 = (int *)*piVar23;
              if (-1 < piVar29[8]) goto LAB_00187bd4;
              uVar26 = piVar29[2];
              uVar19 = piVar29[3];
            }
            uVar18 = uVar22 - uVar18;
            bVar2 = uVar22 < uVar18;
            uVar22 = uVar18 + uVar19;
            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;
            uVar24 = uVar22;
            uVar25 = uVar21;
          }
          else {
            uVar18 = uVar22 - uVar18;
            bVar2 = uVar22 < uVar18;
            uVar22 = uVar18 + uVar19;
            if (iVar9 != 0) {
              uVar24 = uVar22;
            }
            uVar21 = (uint)(uVar22 < uVar18) + ((uVar21 - uVar31) - (uint)bVar2) + uVar26;
            if (iVar9 != 0) {
              uVar25 = uVar21;
            }
          }
          if (piVar29[8] << 2 < 0) goto LAB_00187b94;
          piVar29[6] = uVar25;
          piVar29[7] = uVar24;
          *(byte *)(piVar29 + 8) = *(byte *)(piVar29 + 8) & 0xdf | 0x20;
          if (piVar29[8] << 1 < 0) goto LAB_0018736c;
          (**(code **)(*piVar29 + 0x38))(piVar29);
          iVar10 = piVar29[8];
          uVar26 = uVar24;
joined_r0x001878b8:
          uVar24 = uVar26;
          if (-1 < iVar10 << 1) {
LAB_001878c0:
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x163,
                                PTR_s_alize_xindex_004323b4 + 0x751c);
            return uVar32;
          }
        }
        else {
          iVar10 = *piVar23;
          if (-1 < *(int *)(iVar10 + 0x20) << 2) {
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xe3,
                                PTR_s_alize_xindex_004323b4 + 0x7818);
            return uVar32;
          }
          uVar21 = *(uint *)(iVar10 + 0x18);
          uVar22 = *(uint *)(iVar10 + 0x1c);
          uVar24 = uVar22;
          uVar25 = uVar21;
        }
      }
      else {
        uVar32 = (**(code **)(*(int *)*piVar23 + 0xc))();
        if (iVar9 == 0) {
          if (*in_stack_00000024 == '\0') goto LAB_00187254;
          uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));
          if (uVar32 < uVar33) {
            *in_stack_00000024 = '\0';
            uVar32 = uVar33;
          }
          else {
            *in_stack_00000024 = '\0';
          }
          piVar15 = (int *)PTR_parameters_00432be0;
          iVar10 = (*(code *)PTR_incremental_update_00432eb0)
                             (*(undefined4 *)PTR_parameters_00432be0);
        }
        else {
          if (*in_stack_00000024 == '\0') {
            if (*(Output_segment **)(iVar17 + 0x170) == (Output_segment *)0x0) {
              uVar28 = 0x11c4;
              goto LAB_00187b08;
            }
            uVar33 = maximum_alignment(*(Output_segment **)(iVar17 + 0x170));
            if (uVar33 < uVar32) {
              uVar28 = 0x11c6;
              goto LAB_00187b08;
            }
            *in_stack_00000024 = '\x01';
            uVar32 = uVar33;
          }
LAB_00187254:
          piVar15 = (int *)PTR_parameters_00432be0;
          iVar10 = (*(code *)PTR_incremental_update_00432eb0)
                             (*(undefined4 *)PTR_parameters_00432be0);
        }
        if (iVar10 == 0) {
          if (((uVar21 != uVar27) || (uVar22 != uVar24)) && (iVar8 == 0)) {
            uVar28 = 0x11df;
LAB_00187b08:
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + 0x59f0,uVar28,
                                PTR_s_alize_xindex_004323b4 + 0x7014);
            return uVar32;
          }
          if (uVar32 != 0) {
            lVar3 = uVar32 + CONCAT44((uint)(uVar22 - 1 < uVar22) + (uVar21 - 1),uVar22 - 1);
            uVar22 = (uint)lVar3 & -(int)uVar32;
            uVar21 = (uint)((ulonglong)lVar3 >> 0x20) &
                     -(uint)(-(int)uVar32 != 0) - (int)(uVar32 >> 0x20);
          }
          uVar26 = uVar22;
          uVar25 = uVar21;
          if ((iVar9 == 0) && (uVar26 = uVar24, uVar25 = uVar27, iVar8 == 0)) {
            uVar26 = uVar22;
            uVar25 = uVar21;
          }
          piVar29 = (int *)*piVar23;
          if (piVar29[8] < 0) {
LAB_00187b74:
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x142,
                                PTR_s_alize_xindex_004323b4 + 0x7540);
            return uVar32;
          }
          bVar1 = *(byte *)(piVar29 + 8);
          *(ulonglong *)(piVar29 + 2) =
               param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),
                                  uVar22 - uVar14);
          *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;
          if (piVar29[8] << 2 < 0) {
LAB_00187b94:
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x14b,
                                PTR_s_alize_xindex_004323b4 + 30000);
            return uVar32;
          }
          piVar29[6] = uVar25;
          piVar29[7] = uVar26;
          *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;
          uVar24 = uVar26;
          if (-1 < piVar29[8] << 1) {
            (**(code **)(*piVar29 + 0x38))(piVar29);
            iVar10 = piVar29[8];
            goto joined_r0x001878b8;
          }
        }
        else {
          piVar29 = (int *)*piVar23;
          if (-1 < piVar29[8] << 1) {
            (**(code **)(*piVar29 + 0x34))(piVar29);
            piVar29 = (int *)*piVar23;
          }
          uVar26 = piVar29[4];
          uVar27 = piVar29[5];
          uVar34 = (*(code *)PTR_allocate_00432eb4)(iVar17 + 600);
          uVar21 = (uint)((ulonglong)uVar34 >> 0x20);
          uVar22 = (uint)uVar34;
          if (uVar21 == 0xffffffff) goto LAB_00187acc;
          while( true ) {
            piVar29 = (int *)*piVar23;
            if (piVar29[8] < 0) goto LAB_00187b74;
            bVar1 = *(byte *)(piVar29 + 8);
            *(ulonglong *)(piVar29 + 2) =
                 param_4 + CONCAT44((uVar21 - uVar12) - (uint)(uVar22 < uVar22 - uVar14),
                                    uVar22 - uVar14);
            *(byte *)(piVar29 + 8) = bVar1 & 0x7f | 0x80;
            if (piVar29[8] << 2 < 0) goto LAB_00187b94;
            piVar29[6] = uVar21;
            piVar29[7] = uVar22;
            *(byte *)(piVar29 + 8) = bVar1 & 0x5f | 0xa0;
            if (-1 < piVar29[8] << 1) {
              (**(code **)(*piVar29 + 0x38))(piVar29);
              if (-1 < piVar29[8] << 1) goto LAB_001878c0;
              piVar29 = (int *)*piVar23;
              if (-1 < piVar29[8] << 1) goto LAB_00187b5c;
            }
            if ((piVar29[4] <= (int)uVar26) &&
               ((uVar24 = uVar22, uVar25 = uVar21, piVar29[4] != uVar26 ||
                (uVar26 = (uint)(uVar27 < (uint)piVar29[5]), uVar26 == 0)))) break;
            iVar10 = (**(code **)(*piVar29 + 0x24))(piVar29);
            if (iVar10 == 0) {
              uVar28 = 0x11f6;
              goto LAB_00187b08;
            }
            puVar16 = PTR_s_alize_xindex_004323b4 + -0x299c;
            while( true ) {
              uVar28 = (*(code *)PTR_gettext_00436818)(puVar16);
              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);
              (*(code *)PTR_gold_fallback_00432ebc)(uVar28,*(undefined4 *)(iVar10 + 0x24));
              uVar34 = CONCAT44(uVar28,extraout_v1);
LAB_00187acc:
              uVar21 = (uint)((ulonglong)uVar34 >> 0x20);
              if ((uint)uVar34 != uVar21) break;
              iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);
              if (iVar10 == 0) {
                uVar28 = 0x11ee;
                goto LAB_00187b08;
              }
              puVar16 = PTR_s_alize_xindex_004323b4 + -0x29e0;
            }
          }
        }
      }
LAB_0018736c:
      iVar10 = (*(code *)PTR_incremental_update_00432eb0)(*piVar15);
      if (iVar10 == 0) {
LAB_00187410:
        piVar15 = (int *)*piVar23;
      }
      else {
        puVar13 = (undefined4 *)*piVar15;
        piVar15 = (int *)*piVar23;
        if ((puVar13[2] != 0) && ((puVar13[5] & 0x10) != 0)) {
          uVar28 = *puVar13;
          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;
          iVar30 = piVar15[5];
          iVar10 = (**(code **)(*piVar15 + 0x24))(piVar15);
          puVar16 = puVar7;
          if (iVar10 != 0) {
            iVar10 = (**(code **)(*(int *)*piVar23 + 0x24))((int *)*piVar23);
            puVar16 = *(undefined **)(iVar10 + 0x24);
          }
          (*(code *)PTR_debug_00432ce0)(uVar28,puVar4 + 0x5b24,uVar22,iVar30,puVar16);
          goto LAB_00187410;
        }
      }
      uVar27 = uVar25;
      if (iVar9 == 0) {
        if (-1 < piVar15[8] << 1) {
LAB_00187b5c:
          uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                             (PTR_s_alize_xindex_004323b4 + -0x4fe0,0xcf,
                              PTR_s_alize_xindex_004323b4 + 0x7894);
          return uVar32;
        }
        uVar25 = uVar22 + piVar15[5];
        if (iVar8 == 0) {
          uVar24 = uVar25;
        }
        uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];
        if (iVar8 == 0) {
          uVar27 = uVar21;
        }
      }
      else {
        uVar25 = uVar22;
        if (iVar8 == 0) {
          if (-1 < piVar15[8] << 1) goto LAB_00187b5c;
          uVar25 = uVar22 + piVar15[5];
          uVar21 = (uint)(uVar25 < uVar22) + uVar21 + piVar15[4];
          uVar24 = uVar25;
          uVar27 = uVar21;
        }
      }
      if (((int)local_78 < (int)uVar21) || ((uVar21 == local_78 && (local_54 < uVar25)))) {
        local_78 = uVar21;
        local_54 = uVar25;
      }
      iVar8 = (**(code **)(*piVar15 + 0x18))(piVar15);
      if (iVar8 != 0) {
        piVar15 = (int *)*piVar23;
        if (*(code **)(*piVar15 + 0x30) == (code *)PTR_do_set_out_shndx_00432ea4) {
          if ((piVar15[0x19] != -1) && (*(int *)param_8 != piVar15[0x19])) {
            uVar32 = (*(code *)PTR_do_gold_unreachable_004323c4)
                               (PTR_s_alize_xindex_004323b4 + -0x4fe0,0x104b,
                                PTR_s_alize_xindex_004323b4 + 0x7000);
            return uVar32;
          }
          piVar15[0x19] = *(int *)param_8;
        }
        else {
          (**(code **)(*piVar15 + 0x30))();
        }
        *(int *)param_8 = *(int *)param_8 + 1;
      }
      piVar23 = piVar23 + 1;
      uVar22 = uVar25;
    } while (*(int **)((int)param_5 + 4) != piVar23);
    param_4 = param_4 + CONCAT44((local_78 - uVar12) - (uint)(local_54 < local_54 - uVar14),
                                 local_54 - uVar14);
  }
  *(uint *)param_6 = local_78;
  *(uint *)((int)param_6 + 4) = local_54;
  *param_7 = uVar27;
  param_7[1] = uVar24;
  return param_4;
}

