
/* WARNING: Type propagation algorithm not settling */
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Enum "STT": Some values do not have unique names */
/* DWARF original prototype: bool get_symbol_location_info(Sized_relobj_file<32,_false> * this, uint
   shndx, off_t offset, Symbol_location_info * info) */

bool __thiscall
gold::Sized_relobj_file<32,_false>::get_symbol_location_info
          (Sized_relobj_file<32,_false> *this,uint shndx,off_t offset,Symbol_location_info *info)

{
  uint *puVar1;
  Elf_Word EVar2;
  char cVar3;
  uint uVar4;
  uint uVar5;
  int iVar6;
  Xindex *pXVar7;
  int *piVar8;
  Object *this_00;
  undefined4 *puVar9;
  uint in_a3;
  code *pcVar10;
  undefined *puVar11;
  int iVar12;
  _func_int_varargs *p_Var13;
  uint *puVar14;
  code *pcVar15;
  Location LStack_b0;
  Location LStack_a0;
  int iStack_90;
  int iStack_8c;
  Elf_Word EStack_88;
  Sized_relobj_file<32,_false> *pSStack_7c;
  int iStack_78;
  int iStack_74;
  Symbol_location_info *pSStack_70;
  code *pcStack_6c;
  undefined4 local_58;
  section_size_type names_size;
  section_size_type symbols_size;
  uint local_40;
  undefined4 local_3c;
  uint local_38;
  code *local_34;
  int local_30;
  uint local_2c;
  
  if (this->symtab_shndx_ != 0) {
    local_2c = in_a3;
    puVar1 = (uint *)(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object
                       [0xe])(this,this->symtab_shndx_,&symbols_size,0);
    p_Var13 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0x15];
    if (p_Var13 == (_func_int_varargs *)PTR_do_section_link_00434478) {
      EVar2 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link
                        (&this->elf_file_,this->symtab_shndx_);
    }
    else {
      EVar2 = (*p_Var13)(this);
    }
    if (0xfeff < EVar2) {
      local_40 = EVar2;
      (*(code *)PTR_initialize_shnum_00432a7c)(&this->elf_file_);
      EVar2 = local_40 + (this->elf_file_).large_shndx_offset_;
    }
    local_30 = (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0xe])
                         (this,EVar2,&names_size,0);
    if (symbols_size >> 4 != 0) {
      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;
      iVar12 = 0;
      puVar14 = puVar1 + (symbols_size >> 4) * 4;
      local_38 = (uint)((int)info < 0);
      puVar11 = PTR_s_alize_xindex_004323b4 + -0xd28;
      do {
        while ((puVar1[3] & 0xf000000) == 0x4000000) {
          uVar4 = *puVar1;
          uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          if (uVar4 < names_size) {
            local_40 = local_30 + uVar4;
            local_3c = *(undefined4 *)(offset._0_4_ + 4);
            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);
            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);
            goto LAB_0014b100;
          }
          puVar1 = puVar1 + 4;
          local_58 = 9;
          (*(code *)PTR__M_replace_00432a3c)
                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11);
          iVar12 = iVar12 + 1;
          if (puVar1 == puVar14) {
            return false;
          }
        }
        uVar4 = (*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |
                (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8);
        if (uVar4 < 0xff00) {
          if (shndx == uVar4) {
            uVar4 = puVar1[1];
LAB_0014b13c:
            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
            if (local_38 == 0) {
              if (info == (Symbol_location_info *)0x0) {
                if (uVar4 <= local_2c) {
                  uVar5 = puVar1[2];
                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;
                  goto LAB_0014b16c;
                }
              }
              else {
                uVar5 = puVar1[2];
                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;
                if (info == (Symbol_location_info *)0x0) {
LAB_0014b16c:
                  if (local_2c < uVar4 + iVar6) {
                    uVar4 = *puVar1;
                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;
                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
                    iVar12 = offset._0_4_ + 0x18;
                    if (names_size < uVar4) {
                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);
                      return true;
                    }
                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);
                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {
                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);
                      if ((cVar3 != '\0') &&
                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)
                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {
                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);
                        (*(code *)PTR_free_00436800)(iVar6);
                        return (bool)cVar3;
                      }
                      return true;
                    }
                    iVar6 = 0x5c;
                    pcVar15 = get_symbol_name;
                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);
                    puVar11 = PTR_do_gold_unreachable_004323c4;
                    (*(code *)PTR_do_gold_unreachable_004323c4)
                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);
                    if (piVar8[0x2d] == 0) {
                      return false;
                    }
                    iStack_74 = offset._0_4_;
                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);
                    pSStack_7c = this;
                    iStack_78 = iVar12;
                    pSStack_70 = info;
                    pcStack_6c = pcVar15;
                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {
                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents
                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),
                                 piVar8[0x2d]);
                      if (LStack_a0.data_size._0_4_ == 0) {
                        iStack_8c = LStack_a0.data_size._4_4_;
                        if (LStack_a0.data_size._4_4_ == 0) {
                          iVar12 = *(int *)(puVar11 + 0x2e909c);
                          goto LAB_0014b43c;
                        }
                        this_00 = (Object *)piVar8[7];
                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;
                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);
                        pcVar15 = *(code **)(*piVar8 + 0x54);
                        uVar4 = piVar8[0x2d];
                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;
                        goto LAB_0014b450;
                      }
                    }
                    else {
                      iVar12 = (**(code **)(*piVar8 + 0x38))();
LAB_0014b43c:
                      pcVar15 = *(code **)(*piVar8 + 0x54);
                      uVar4 = piVar8[0x2d];
                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {
LAB_0014b450:
                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link
                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),
                                           uVar4);
                        if (uVar4 < 0xff00) goto LAB_0014b46c;
LAB_0014b59c:
                        EStack_88 = uVar4;
                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);
                        uVar4 = EStack_88 + piVar8[0x2a];
                        pcVar15 = *(code **)(*piVar8 + 0x38);
                      }
                      else {
LAB_0014b584:
                        uVar4 = (*pcVar15)(piVar8);
                        if (0xfeff < uVar4) goto LAB_0014b59c;
LAB_0014b46c:
                        pcVar15 = *(code **)(*piVar8 + 0x38);
                      }
                      if (pcVar15 != pcVar10) {
                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);
                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);
                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {
                          return false;
                        }
LAB_0014b500:
                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));
                      }
                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents
                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),
                                 uVar4);
                      if (LStack_b0.data_size._0_4_ == 0) {
                        iStack_90 = LStack_b0.data_size._4_4_;
                        if (LStack_b0.data_size._4_4_ == 0) {
                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);
                        }
                        else {
                          this_00 = (Object *)piVar8[7];
                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;
                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);
                        }
                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);
                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {
                          return false;
                        }
                        goto LAB_0014b500;
                      }
                    }
                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);
                    (**(code **)(puVar11 + 0x2e7004))
                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);
LAB_0014b65c:
                    /* WARNING: Subroutine does not return */
                    Object::input_file(this_00);
                  }
                }
              }
            }
          }
        }
        else if (uVar4 == 0xffff) {
          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;
          if (pXVar7 == (Xindex *)0x0) {
            pXVar7 = (Xindex *)
                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object
                       [0x1b])(this);
            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;
          }
          uVar4 = (*local_34)(pXVar7,this,iVar12);
          if (shndx == uVar4) {
            uVar4 = puVar1[1];
            goto LAB_0014b13c;
          }
        }
LAB_0014b100:
        puVar1 = puVar1 + 4;
        iVar12 = iVar12 + 1;
        if (puVar1 == puVar14) {
          return false;
        }
      } while( true );
    }
  }
  return false;
}



/* gold::Sized_relobj_file<32, false>::get_symbol_location_info(unsigned int, long long,
   gold::Symbol_location_info*) */

uint gold::Sized_relobj_file<32,false>::get_symbol_location_info
               (uint param_1,longlong param_2,Symbol_location_info *param_3)

{
  uint *puVar1;
  uint uVar2;
  undefined4 uVar3;
  Symbol_location_info *pSVar4;
  uint uVar5;
  int iVar6;
  int in_a2;
  uint in_a3;
  undefined *puVar7;
  int iVar8;
  uint *puVar9;
  uint local_48;
  uint local_44;
  uint local_40;
  undefined4 local_3c;
  uint local_38;
  code *local_34;
  int local_30;
  uint local_2c;
  
  if (*(int *)(param_1 + 0xb4) != 0) {
    local_2c = in_a3;
    puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))
                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);
    if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {
      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link
                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),
                         *(uint *)(param_1 + 0xb4));
    }
    else {
      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);
    }
    if (0xfeff < uVar2) {
      local_40 = uVar2;
      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);
      uVar2 = local_40 + *(int *)(param_1 + 0xa8);
    }
    local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);
    if (local_44 >> 4 != 0) {
      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;
      iVar8 = 0;
      puVar9 = puVar1 + (local_44 >> 4) * 4;
      local_38 = (uint)(in_a2 < 0);
      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;
      do {
        while ((puVar1[3] & 0xf000000) == 0x4000000) {
          uVar2 = *puVar1;
          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +
                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;
          if (uVar2 < local_48) {
            local_40 = local_30 + uVar2;
            local_3c = *(undefined4 *)(param_2._0_4_ + 4);
            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);
            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);
            goto LAB_0014b100;
          }
          puVar1 = puVar1 + 4;
          (*(code *)PTR__M_replace_00432a3c)
                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);
          iVar8 = iVar8 + 1;
          if (puVar1 == puVar9) {
            return 0;
          }
        }
        pSVar4 = (Symbol_location_info *)
                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |
                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));
        if (pSVar4 < (Symbol_location_info *)0xff00) {
          if (param_3 == pSVar4) {
            uVar2 = puVar1[1];
LAB_0014b13c:
            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +
                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;
            if (local_38 == 0) {
              if (in_a2 == 0) {
                if (uVar2 <= local_2c) {
                  uVar5 = puVar1[2];
                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;
                  goto LAB_0014b16c;
                }
              }
              else {
                uVar5 = puVar1[2];
                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;
                if (in_a2 == 0) {
LAB_0014b16c:
                  if (local_2c < uVar2 + iVar6) {
                    uVar2 = *puVar1;
                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;
                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +
                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;
                    iVar8 = param_2._0_4_ + 0x18;
                    if (local_48 < uVar2) {
                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);
                      return 1;
                    }
                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);
                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {
                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)
                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,
                                         PTR_s_alize_xindex_004323b4 + 0x46c);
                      return uVar2;
                    }
                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);
                    if ((uVar2 != 0) &&
                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)
                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {
                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);
                      (*(code *)PTR_free_00436800)(iVar6);
                      return uVar2;
                    }
                    return 1;
                  }
                }
              }
            }
          }
        }
        else if (pSVar4 == (Symbol_location_info *)0xffff) {
          iVar6 = *(int *)(param_1 + 0x30);
          if (iVar6 == 0) {
            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);
            *(int *)(param_1 + 0x30) = iVar6;
          }
          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);
          if (param_3 == pSVar4) {
            uVar2 = puVar1[1];
            goto LAB_0014b13c;
          }
        }
LAB_0014b100:
        puVar1 = puVar1 + 4;
        iVar8 = iVar8 + 1;
      } while (puVar1 != puVar9);
    }
  }
  return 0;
}


lui gp,0x2f
addiu gp,gp,-0xe18
addu gp,gp,t9
addiu sp,sp,-0x68
lw v0,0xb4(a0)
sw gp,0x18(sp)
sw s2,0x48(sp)
sw ra,0x64(sp)
sw s8,0x60(sp)
sw s7,0x5c(sp)
sw s6,0x58(sp)
sw s5,0x54(sp)
sw s4,0x50(sp)
sw s3,0x4c(sp)
sw s1,0x44(sp)
sw s0,0x40(sp)
beq v0,zero,0x0014b22c
_lw s2,0x78(sp)
lw v1,0x0(a0)
or s0,a0,zero
sw a3,0x3c(sp)
or s3,a2,zero
or a3,zero,zero
addiu a2,sp,0x24
lw t9,0x38(v1)
or s1,a1,zero
jalr t9
_or a1,v0,zero
lw gp,0x18(sp)
or s5,v0,zero
lw v1,0x0(s0)
lw v0,-0x5d58(gp)
lw t9,0x54(v1)
bne t9,v0,0x0014b334
_lw a1,0xb4(s0)
lw t9,-0x5d5c(gp)
bal 0x0014aea8
_addiu a0,s0,0x90
lw gp,0x18(sp)
or a1,v0,zero
ori v1,zero,0xff00
sltu v1,a1,v1
beq v1,zero,0x0014b2fc
_lw t9,-0x7754(gp)
lw v0,0x0(s0)
or a3,zero,zero
addiu a2,sp,0x20
lw t9,0x38(v0)
jalr t9
_or a0,s0,zero
lw t2,0x24(sp)
lw gp,0x18(sp)
srl t2,t2,0x4
beq t2,zero,0x0014b22c
_sw v0,0x38(sp)
lw v0,-0x75a0(gp)
sll t2,t2,0x4
lw s4,-0x7e1c(gp)
or s6,zero,zero
addu s8,s5,t2
sw v0,0x34(sp)
slti v0,s3,0x0
li s7,0x4
sw v0,0x30(sp)
b 0x0014b108
_addiu s4,s4,-0xd28
ori v0,zero,0xffff
beq v1,v0,0x0014b264
_nop
addiu s5,s5,0x10
beq s5,s8,0x0014b22c
_addiu s6,s6,0x1
lbu v0,0xc(s5)
andi v0,v0,0xf
beq v0,s7,0x0014b1e4
_ori a0,zero,0xff00
lhu v1,0xe(s5)
wsbh v1,v1
andi v1,v1,0xffff
sltu a0,v1,a0
beq a0,zero,0x0014b0f0
_or v0,v1,zero
bne s1,v0,0x0014b0fc
_nop
lw v0,0x4(s5)
lw v1,0x30(sp)
wsbh v0,v0
bne v1,zero,0x0014b0fc
_rotr v0,v0,0x10
beq s3,zero,0x0014b2d4
_lw v1,0x3c(sp)
lw v1,0x8(s5)
wsbh v1,v1
rotr v1,v1,0x10
bne s3,zero,0x0014b0fc
_addu v0,v0,v1
lw v1,0x3c(sp)
sltu v0,v1,v0
beq v0,zero,0x0014b100
_addiu s5,s5,0x10
addiu s5,s5,-0x10
lw a1,0x0(s5)
lbu v0,0xc(s5)
wsbh a1,a1
andi v0,v0,0xf
sw v0,0x30(s2)
rotr a1,a1,0x10
lw v0,0x20(sp)
sltu v0,v0,a1
bne v0,zero,0x0014b388
_addiu s1,s2,0x18
lw v0,0x38(sp)
or a0,s1,zero
lw t9,-0x7708(gp)
jalr t9
_addu a1,v0,a1
lw gp,0x18(sp)
lw v0,-0x75f0(gp)
lw v0,0x0(v0)
lw v0,0x8(v0)
beq v0,zero,0x0014b3a8
_lw a2,-0x7e1c(gp)
lbu s0,0x5949(v0)
bne s0,zero,0x0014b348
_lw t9,-0x6c20(gp)
b 0x0014b230
_li s0,0x1
lw a3,0x0(s5)
lw v0,0x20(sp)
wsbh a3,a3
rotr a3,a3,0x10
sltu v0,a3,v0
bne v0,zero,0x0014b290
_lw a2,0x4(s2)
lw t9,-0x7794(gp)
li v0,0x9
or a1,zero,zero
addiu s5,s5,0x10
sw v0,0x10(sp)
or a3,s4,zero
jalr t9
_or a0,s2,zero
addiu s6,s6,0x1
bne s5,s8,0x0014b108
_lw gp,0x18(sp)
or s0,zero,zero
lw ra,0x64(sp)
or v0,s0,zero
lw s8,0x60(sp)
lw s7,0x5c(sp)
lw s6,0x58(sp)
lw s5,0x54(sp)
lw s4,0x50(sp)
lw s3,0x4c(sp)
lw s2,0x48(sp)
lw s1,0x44(sp)
lw s0,0x40(sp)
jr ra
_addiu sp,sp,0x68
lw a0,0x30(s0)
beq a0,zero,0x0014b318
_nop
lw t9,0x34(sp)
or a2,s6,zero
jalr t9
_or a1,s0,zero
bne s1,v0,0x0014b0fc
_lw gp,0x18(sp)
b 0x0014b13c
_lw v0,0x4(s5)
lw v0,0x38(sp)
lw t9,-0x3a54(gp)
sw a2,0x2c(sp)
addu a3,v0,a3
or a0,a3,zero
jalr t9
_sw a3,0x28(sp)
or a1,zero,zero
lw gp,0x18(sp)
or a0,s2,zero
lw a3,0x28(sp)
lw a2,0x2c(sp)
lw t9,-0x7794(gp)
jalr t9
_sw v0,0x10(sp)
b 0x0014b0fc
_lw gp,0x18(sp)
sltu v1,v1,v0
bne v1,zero,0x0014b0fc
_nop
lw v1,0x8(s5)
wsbh v1,v1
rotr v1,v1,0x10
bne s3,zero,0x0014b0fc
_addu v0,v0,v1
b 0x0014b16c
_lw v1,0x3c(sp)
addiu a0,s0,0x90
jalr t9
_sw a1,0x28(sp)
lw v0,0xa8(s0)
lw a1,0x28(sp)
b 0x0014b098
_addu a1,a1,v0
lw v0,0x0(s0)
lw t9,0x6c(v0)
jalr t9
_or a0,s0,zero
or a0,v0,zero
b 0x0014b270
_sw v0,0x30(s0)
jalr t9
_or a0,s0,zero
lw gp,0x18(sp)
b 0x0014b088
_or a1,v0,zero
li a1,0x3
jalr t9
_lw a0,0x18(s2)
lw gp,0x18(sp)
beq v0,zero,0x0014b1dc
_or s2,v0,zero
lw t9,-0x7708(gp)
or a0,s1,zero
jalr t9
_or a1,v0,zero
lw gp,0x18(sp)
lw t9,-0x39d0(gp)
jalr t9
_or a0,s2,zero
b 0x0014b234
_lw ra,0x64(sp)
lw a1,-0x7e1c(gp)
or a0,s1,zero
lw t9,-0x7708(gp)
li s0,0x1
jalr t9
_addiu a1,a1,-0xd28
b 0x0014b234
_lw ra,0x64(sp)
li a1,0x5c
lw a0,-0x7e1c(gp)
lw t9,-0x7e0c(gp)
addiu a2,a2,0x46c
jalr t9
_addiu a0,a0,-0x5cec
(translation_unit "/* gold::Sized_relobj_file<32, false>::get_symbol_location_info(unsigned int, long long,\n   gold::Symbol_location_info*) */\n\nuint gold::Sized_relobj_file<32,false>::get_symbol_location_info\n               (uint param_1,longlong param_2,Symbol_location_info *param_3)\n\n{\n  uint *puVar1;\n  uint uVar2;\n  undefined4 uVar3;\n  Symbol_location_info *pSVar4;\n  uint uVar5;\n  int iVar6;\n  int in_a2;\n  uint in_a3;\n  undefined *puVar7;\n  int iVar8;\n  uint *puVar9;\n  uint local_48;\n  uint local_44;\n  uint local_40;\n  undefined4 local_3c;\n  uint local_38;\n  code *local_34;\n  int local_30;\n  uint local_2c;\n  \n  if (*(int *)(param_1 + 0xb4) != 0) {\n    local_2c = in_a3;\n    puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);\n    if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }\n    else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }\n    if (0xfeff < uVar2) {\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }\n    local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);\n    if (local_44 >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }\n  }\n  return 0;\n}\n\n" comment (declaration "uint gold::Sized_relobj_file<32,false>::get_symbol_location_info\n               (uint param_1,longlong param_2,Symbol_location_info *param_3)\n\n{\n  uint *puVar1;" type_identifier (ERROR "gold::" identifier : :) identifier (ERROR "<32" < number_literal) , (ERROR "false>::get_symbol_location_info\n               (uint param_1,longlong param_2,Symbol_location_info *param_3)\n\n{\n  uint" identifier > : : (function_declarator "get_symbol_location_info\n               (uint param_1,longlong param_2,Symbol_location_info *param_3)" identifier (parameter_list "(uint param_1,longlong param_2,Symbol_location_info *param_3)" ( (parameter_declaration "uint param_1" type_identifier identifier) , (parameter_declaration "longlong param_2" type_identifier identifier) , (parameter_declaration "Symbol_location_info *param_3" type_identifier (pointer_declarator "*param_3" * identifier)) ))) { identifier) (pointer_declarator "*puVar1" * identifier) ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "Symbol_location_info *pSVar4;" type_identifier (pointer_declarator "*pSVar4" * identifier) ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int in_a2;" primitive_type identifier ;) (declaration "uint in_a3;" type_identifier identifier ;) (declaration "undefined *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "uint *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "uint local_48;" type_identifier identifier ;) (declaration "uint local_44;" type_identifier identifier ;) (declaration "uint local_40;" type_identifier identifier ;) (declaration "undefined4 local_3c;" type_identifier identifier ;) (declaration "uint local_38;" type_identifier identifier ;) (declaration "code *local_34;" type_identifier (pointer_declarator "*local_34" * identifier) ;) (declaration "int local_30;" primitive_type identifier ;) (declaration "uint local_2c;" type_identifier identifier ;) (if_statement "if (*(int *)(param_1 + 0xb4) != 0) {\n    local_2c = in_a3;\n    puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);\n    if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }\n    else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }\n    if (0xfeff < uVar2) {\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }\n    local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);\n    if (local_44 >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0xb4) != 0)" ( (binary_expression "*(int *)(param_1 + 0xb4) != 0" (pointer_expression "*(int *)(param_1 + 0xb4)" * (cast_expression "(int *)(param_1 + 0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb4)" ( (binary_expression "param_1 + 0xb4" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    local_2c = in_a3;\n    puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);\n    if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }\n    else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }\n    if (0xfeff < uVar2) {\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }\n    local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);\n    if (local_44 >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }\n  }" { (expression_statement "local_2c = in_a3;" (assignment_expression "local_2c = in_a3" identifier = identifier) ;) (expression_statement "puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);" (assignment_expression "puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0)" identifier = (cast_expression "(uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x38))" ( (pointer_expression "**(code **)(*(int *)param_1 + 0x38)" * (pointer_expression "*(code **)(*(int *)param_1 + 0x38)" * (cast_expression "(code **)(*(int *)param_1 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1 + 0x38)" ( (binary_expression "*(int *)param_1 + 0x38" (pointer_expression "*(int *)param_1" * (cast_expression "(int *)param_1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) ))))) )) (argument_list "(param_1,*(int *)(param_1 + 0xb4),&local_44,0)" ( identifier , (pointer_expression "*(int *)(param_1 + 0xb4)" * (cast_expression "(int *)(param_1 + 0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb4)" ( (binary_expression "param_1 + 0xb4" identifier + number_literal) )))) , (pointer_expression "&local_44" & identifier) , number_literal ))))) ;) (if_statement "if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }\n    else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }" if (parenthesized_expression "(*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478)" ( (binary_expression "*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478" (pointer_expression "*(code **)(*(int *)param_1 + 0x54)" * (cast_expression "(code **)(*(int *)param_1 + 0x54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1 + 0x54)" ( (binary_expression "*(int *)param_1 + 0x54" (pointer_expression "*(int *)param_1" * (cast_expression "(int *)param_1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) == (cast_expression "(code *)PTR_do_section_link_00434478" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (compound_statement "{\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }" { (ERROR "uVar2 = elfcpp::Elf_file<32,false,gold::" (comma_expression "uVar2 = elfcpp::Elf_file<32,false,gold" (binary_expression "uVar2 = elfcpp::Elf_file<32" (assignment_expression "uVar2 = elfcpp" identifier = identifier) (ERROR "::Elf_file" : : identifier) < number_literal) , (comma_expression "false,gold" false , identifier)) : :) (expression_statement "Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));" (binary_expression "Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4))" identifier > (ERROR "::" : :) (call_expression "section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4))" identifier (argument_list "((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4))" ( (call_expression "(Elf_file<32,false,gold::Object> *)(param_1 + 0x90)" (parenthesized_expression "(Elf_file<32,false,gold::Object> *)" ( (ERROR "Elf_file<32,false,gold::" (comma_expression "Elf_file<32,false,gold" (binary_expression "Elf_file<32" identifier < number_literal) , (comma_expression "false,gold" false , identifier)) : :) (binary_expression "Object> *" identifier > (pointer_expression "*" * identifier)) )) (argument_list "(param_1 + 0x90)" ( (binary_expression "param_1 + 0x90" identifier + number_literal) ))) , (pointer_expression "*(uint *)(param_1 + 0xb4)" * (cast_expression "(uint *)(param_1 + 0xb4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb4)" ( (binary_expression "param_1 + 0xb4" identifier + number_literal) )))) )))) ;) }) (else_clause "else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }" else (compound_statement "{\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }" { (expression_statement "uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);" (assignment_expression "uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1)" identifier = (call_expression "(**(code **)(*(int *)param_1 + 0x54))(param_1)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x54))" ( (pointer_expression "**(code **)(*(int *)param_1 + 0x54)" * (pointer_expression "*(code **)(*(int *)param_1 + 0x54)" * (cast_expression "(code **)(*(int *)param_1 + 0x54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1 + 0x54)" ( (binary_expression "*(int *)param_1 + 0x54" (pointer_expression "*(int *)param_1" * (cast_expression "(int *)param_1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) }))) (if_statement "if (0xfeff < uVar2) {\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }" if (parenthesized_expression "(0xfeff < uVar2)" ( (binary_expression "0xfeff < uVar2" number_literal < identifier) )) (compound_statement "{\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }" { (expression_statement "local_40 = uVar2;" (assignment_expression "local_40 = uVar2" identifier = identifier) ;) (expression_statement "(*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);" (call_expression "(*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90)" (parenthesized_expression "(*(code *)PTR_initialize_shnum_00432a7c)" ( (pointer_expression "*(code *)PTR_initialize_shnum_00432a7c" * (cast_expression "(code *)PTR_initialize_shnum_00432a7c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1 + 0x90)" ( (binary_expression "param_1 + 0x90" identifier + number_literal) ))) ;) (expression_statement "uVar2 = local_40 + *(int *)(param_1 + 0xa8);" (assignment_expression "uVar2 = local_40 + *(int *)(param_1 + 0xa8)" identifier = (binary_expression "local_40 + *(int *)(param_1 + 0xa8)" identifier + (pointer_expression "*(int *)(param_1 + 0xa8)" * (cast_expression "(int *)(param_1 + 0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa8)" ( (binary_expression "param_1 + 0xa8" identifier + number_literal) )))))) ;) })) (expression_statement "local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);" (assignment_expression "local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0)" identifier = (call_expression "(**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x38))" ( (pointer_expression "**(code **)(*(int *)param_1 + 0x38)" * (pointer_expression "*(code **)(*(int *)param_1 + 0x38)" * (cast_expression "(code **)(*(int *)param_1 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1 + 0x38)" ( (binary_expression "*(int *)param_1 + 0x38" (pointer_expression "*(int *)param_1" * (cast_expression "(int *)param_1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) ))))) )) (argument_list "(param_1,uVar2,&local_48,0)" ( identifier , identifier , (pointer_expression "&local_48" & identifier) , number_literal )))) ;) (if_statement "if (local_44 >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }" if (parenthesized_expression "(local_44 >> 4 != 0)" ( (binary_expression "local_44 >> 4 != 0" (binary_expression "local_44 >> 4" identifier >> number_literal) != number_literal) )) (compound_statement "{\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }" { (expression_statement "local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;" (assignment_expression "local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30" identifier = (cast_expression "(code *)PTR_sym_xindex_to_shndx_00432c30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" identifier = number_literal) ;) (expression_statement "puVar9 = puVar1 + (local_44 >> 4) * 4;" (assignment_expression "puVar9 = puVar1 + (local_44 >> 4) * 4" identifier = (binary_expression "puVar1 + (local_44 >> 4) * 4" identifier + (binary_expression "(local_44 >> 4) * 4" (parenthesized_expression "(local_44 >> 4)" ( (binary_expression "local_44 >> 4" identifier >> number_literal) )) * number_literal))) ;) (expression_statement "local_38 = (uint)(in_a2 < 0);" (assignment_expression "local_38 = (uint)(in_a2 < 0)" identifier = (call_expression "(uint)(in_a2 < 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(in_a2 < 0)" ( (binary_expression "in_a2 < 0" identifier < number_literal) )))) ;) (expression_statement "puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;" (assignment_expression "puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + -0xd28" identifier + number_literal)) ;) (do_statement "do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);" do (compound_statement "{\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      }" { (while_statement "while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }" while (parenthesized_expression "((puVar1[3] & 0xf000000) == 0x4000000)" ( (binary_expression "(puVar1[3] & 0xf000000) == 0x4000000" (parenthesized_expression "(puVar1[3] & 0xf000000)" ( (binary_expression "puVar1[3] & 0xf000000" (subscript_expression "puVar1[3]" identifier [ number_literal ]) & number_literal) )) == number_literal) )) (compound_statement "{\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }" { (expression_statement "uVar2 = *puVar1;" (assignment_expression "uVar2 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" ( (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" ( (binary_expression "uVar2 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" ( (binary_expression "uVar2 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" ( (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" ( (binary_expression "uVar2 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (if_statement "if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }" if (parenthesized_expression "(uVar2 < local_48)" ( (binary_expression "uVar2 < local_48" identifier < identifier) )) (compound_statement "{\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }" { (expression_statement "local_40 = local_30 + uVar2;" (assignment_expression "local_40 = local_30 + uVar2" identifier = (binary_expression "local_30 + uVar2" identifier + identifier)) ;) (expression_statement "local_3c = *(undefined4 *)(param_2._0_4_ + 4);" (assignment_expression "local_3c = *(undefined4 *)(param_2._0_4_ + 4)" identifier = (pointer_expression "*(undefined4 *)(param_2._0_4_ + 4)" * (cast_expression "(undefined4 *)(param_2._0_4_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2._0_4_ + 4)" ( (binary_expression "param_2._0_4_ + 4" (field_expression "param_2._0_4_" identifier . field_identifier) + number_literal) ))))) ;) (expression_statement "uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);" (assignment_expression "uVar3 = (*(code *)PTR_strlen_0043677c)(local_40)" identifier = (call_expression "(*(code *)PTR_strlen_0043677c)(local_40)" (parenthesized_expression "(*(code *)PTR_strlen_0043677c)" ( (pointer_expression "*(code *)PTR_strlen_0043677c" * (cast_expression "(code *)PTR_strlen_0043677c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_40)" ( identifier )))) ;) (expression_statement "(*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);" (call_expression "(*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3)" (parenthesized_expression "(*(code *)PTR__M_replace_00432a3c)" ( (pointer_expression "*(code *)PTR__M_replace_00432a3c" * (cast_expression "(code *)PTR__M_replace_00432a3c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2._0_4_,0,local_3c,local_40,uVar3)" ( (field_expression "param_2._0_4_" identifier . field_identifier) , number_literal , identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_0014b100;" goto statement_identifier ;) })) (expression_statement "puVar1 = puVar1 + 4;" (assignment_expression "puVar1 = puVar1 + 4" identifier = (binary_expression "puVar1 + 4" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);" (call_expression "(*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9)" (parenthesized_expression "(*(code *)PTR__M_replace_00432a3c)" ( (pointer_expression "*(code *)PTR__M_replace_00432a3c" * (cast_expression "(code *)PTR__M_replace_00432a3c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9)" ( (field_expression "param_2._0_4_" identifier . field_identifier) , number_literal , (pointer_expression "*(undefined4 *)(param_2._0_4_ + 4)" * (cast_expression "(undefined4 *)(param_2._0_4_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2._0_4_ + 4)" ( (binary_expression "param_2._0_4_ + 4" (field_expression "param_2._0_4_" identifier . field_identifier) + number_literal) )))) , identifier , number_literal ))) ;) (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" identifier = (binary_expression "iVar8 + 1" identifier + number_literal)) ;) (if_statement "if (puVar1 == puVar9) {\n            return 0;\n          }" if (parenthesized_expression "(puVar1 == puVar9)" ( (binary_expression "puVar1 == puVar9" identifier == identifier) )) (compound_statement "{\n            return 0;\n          }" { (return_statement "return 0;" return number_literal ;) })) })) (expression_statement "pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));" (assignment_expression "pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8))" identifier = (cast_expression "(Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8))" ( (type_descriptor "Symbol_location_info *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8))" ( (binary_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8)" (binary_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff)" ( (binary_expression "*(ushort *)((int)puVar1 + 0xe) & 0xff" (pointer_expression "*(ushort *)((int)puVar1 + 0xe)" * (cast_expression "(ushort *)((int)puVar1 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar1 + 0xe)" ( (binary_expression "(int)puVar1 + 0xe" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)((int)puVar1 + 0xe) >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)((int)puVar1 + 0xe) >> 8)" ( (binary_expression "*(ushort *)((int)puVar1 + 0xe) >> 8" (pointer_expression "*(ushort *)((int)puVar1 + 0xe)" * (cast_expression "(ushort *)((int)puVar1 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar1 + 0xe)" ( (binary_expression "(int)puVar1 + 0xe" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) >> number_literal) )))) )))) ;) (if_statement "if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" if (parenthesized_expression "(pSVar4 < (Symbol_location_info *)0xff00)" ( (binary_expression "pSVar4 < (Symbol_location_info *)0xff00" identifier < (cast_expression "(Symbol_location_info *)0xff00" ( (type_descriptor "Symbol_location_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }" { (if_statement "if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }" if (parenthesized_expression "(param_3 == pSVar4)" ( (binary_expression "param_3 == pSVar4" identifier == identifier) )) (compound_statement "{\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }" { (expression_statement "uVar2 = puVar1[1];" (assignment_expression "uVar2 = puVar1[1]" identifier = (subscript_expression "puVar1[1]" identifier [ number_literal ])) ;) (labeled_statement "LAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" statement_identifier : (expression_statement "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" ( (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" ( (binary_expression "uVar2 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" ( (binary_expression "uVar2 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" ( (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" ( (binary_expression "uVar2 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;)) (if_statement "if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }" if (parenthesized_expression "(local_38 == 0)" ( (binary_expression "local_38 == 0" identifier == number_literal) )) (compound_statement "{\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }" { (if_statement "if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }" if (parenthesized_expression "(in_a2 == 0)" ( (binary_expression "in_a2 == 0" identifier == number_literal) )) (compound_statement "{\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }" { (if_statement "if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }" if (parenthesized_expression "(uVar2 <= local_2c)" ( (binary_expression "uVar2 <= local_2c" identifier <= identifier) )) (compound_statement "{\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }" { (expression_statement "uVar5 = puVar1[2];" (assignment_expression "uVar5 = puVar1[2]" identifier = (subscript_expression "puVar1[2]" identifier [ number_literal ])) ;) (expression_statement "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (goto_statement "goto LAB_0014b16c;" goto statement_identifier ;) })) }) (else_clause "else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }" else (compound_statement "{\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }" { (expression_statement "uVar5 = puVar1[2];" (assignment_expression "uVar5 = puVar1[2]" identifier = (subscript_expression "puVar1[2]" identifier [ number_literal ])) ;) (expression_statement "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (if_statement "if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }" if (parenthesized_expression "(in_a2 == 0)" ( (binary_expression "in_a2 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }" { (labeled_statement "LAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }" statement_identifier : (if_statement "if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }" if (parenthesized_expression "(local_2c < uVar2 + iVar6)" ( (binary_expression "local_2c < uVar2 + iVar6" identifier < (binary_expression "uVar2 + iVar6" identifier + identifier)) )) (compound_statement "{\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }" { (expression_statement "uVar2 = *puVar1;" (assignment_expression "uVar2 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;" (assignment_expression "*(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf" (pointer_expression "*(uint *)(param_2._0_4_ + 0x30)" * (cast_expression "(uint *)(param_2._0_4_ + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2._0_4_ + 0x30)" ( (binary_expression "param_2._0_4_ + 0x30" (field_expression "param_2._0_4_" identifier . field_identifier) + number_literal) )))) = (binary_expression "*(byte *)(puVar1 + 3) & 0xf" (pointer_expression "*(byte *)(puVar1 + 3)" * (cast_expression "(byte *)(puVar1 + 3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 3)" ( (binary_expression "puVar1 + 3" identifier + number_literal) )))) & number_literal)) ;) (expression_statement "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" ( (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" ( (binary_expression "uVar2 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" ( (binary_expression "uVar2 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" ( (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" ( (binary_expression "uVar2 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "iVar8 = param_2._0_4_ + 0x18;" (assignment_expression "iVar8 = param_2._0_4_ + 0x18" identifier = (binary_expression "param_2._0_4_ + 0x18" (field_expression "param_2._0_4_" identifier . field_identifier) + number_literal)) ;) (if_statement "if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }" if (parenthesized_expression "(local_48 < uVar2)" ( (binary_expression "local_48 < uVar2" identifier < identifier) )) (compound_statement "{\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }" { (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" ( (pointer_expression "*(code *)PTR_assign_00432ac8" * (cast_expression "(code *)PTR_assign_00432ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28)" ( identifier , (binary_expression "PTR_s_alize_xindex_004323b4 + -0xd28" identifier + number_literal) ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" ( (pointer_expression "*(code *)PTR_assign_00432ac8" * (cast_expression "(code *)PTR_assign_00432ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8,local_30 + uVar2)" ( identifier , (binary_expression "local_30 + uVar2" identifier + identifier) ))) ;) (if_statement "if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }" if (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0" (pointer_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_00432be0 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_00432be0 + 8)" ( (binary_expression "*(int *)PTR_parameters_00432be0 + 8" (pointer_expression "*(int *)PTR_parameters_00432be0" * (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) == number_literal) )) (compound_statement "{\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }" { (expression_statement "uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);" (assignment_expression "uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c)" (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 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x5cec" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x46c" identifier + number_literal) )))) ;) (return_statement "return uVar2;" return identifier ;) })) (expression_statement "uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);" (assignment_expression "uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" identifier = (binary_expression "(uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949" (pointer_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_00432be0 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_00432be0 + 8)" ( (binary_expression "*(int *)PTR_parameters_00432be0 + 8" (pointer_expression "*(int *)PTR_parameters_00432be0" * (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) + number_literal) ))))) ;) (if_statement "if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }" if (parenthesized_expression "((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0))" ( (binary_expression "(uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)" (parenthesized_expression "(uVar2 != 0)" ( (binary_expression "uVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)" ( (comma_expression "iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0" (assignment_expression "iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3)" identifier = (call_expression "(*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3)" (parenthesized_expression "(*(code *)PTR_cplus_demangle_004335b0)" ( (pointer_expression "*(code *)PTR_cplus_demangle_004335b0" * (cast_expression "(code *)PTR_cplus_demangle_004335b0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)(param_2._0_4_ + 0x18),3)" ( (pointer_expression "*(undefined4 *)(param_2._0_4_ + 0x18)" * (cast_expression "(undefined4 *)(param_2._0_4_ + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2._0_4_ + 0x18)" ( (binary_expression "param_2._0_4_ + 0x18" (field_expression "param_2._0_4_" identifier . field_identifier) + number_literal) )))) , number_literal )))) , (binary_expression "iVar6 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }" { (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar8,iVar6);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar8,iVar6)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" ( (pointer_expression "*(code *)PTR_assign_00432ac8" * (cast_expression "(code *)PTR_assign_00432ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8,iVar6)" ( identifier , identifier ))) ;) (expression_statement "(*(code *)PTR_free_00436800)(iVar6);" (call_expression "(*(code *)PTR_free_00436800)(iVar6)" (parenthesized_expression "(*(code *)PTR_free_00436800)" ( (pointer_expression "*(code *)PTR_free_00436800" * (cast_expression "(code *)PTR_free_00436800" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier ))) ;) (return_statement "return uVar2;" return identifier ;) })) (return_statement "return 1;" return number_literal ;) }))) })) }))) })) })) }) (else_clause "else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" else (if_statement "if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" if (parenthesized_expression "(pSVar4 == (Symbol_location_info *)0xffff)" ( (binary_expression "pSVar4 == (Symbol_location_info *)0xffff" identifier == (cast_expression "(Symbol_location_info *)0xffff" ( (type_descriptor "Symbol_location_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" { (expression_statement "iVar6 = *(int *)(param_1 + 0x30);" (assignment_expression "iVar6 = *(int *)(param_1 + 0x30)" identifier = (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (if_statement "if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }" { (expression_statement "iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);" (assignment_expression "iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1)" identifier = (call_expression "(**(code **)(*(int *)param_1 + 0x6c))(param_1)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x6c))" ( (pointer_expression "**(code **)(*(int *)param_1 + 0x6c)" * (pointer_expression "*(code **)(*(int *)param_1 + 0x6c)" * (cast_expression "(code **)(*(int *)param_1 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1 + 0x6c)" ( (binary_expression "*(int *)param_1 + 0x6c" (pointer_expression "*(int *)param_1" * (cast_expression "(int *)param_1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "*(int *)(param_1 + 0x30) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x30) = iVar6" (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) = identifier) ;) })) (expression_statement "pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);" (assignment_expression "pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8)" identifier = (cast_expression "(Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8)" ( (type_descriptor "Symbol_location_info *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*local_34)(iVar6,param_1,iVar8)" (parenthesized_expression "(*local_34)" ( (pointer_expression "*local_34" * identifier) )) (argument_list "(iVar6,param_1,iVar8)" ( identifier , identifier , identifier ))))) ;) (if_statement "if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }" if (parenthesized_expression "(param_3 == pSVar4)" ( (binary_expression "param_3 == pSVar4" identifier == identifier) )) (compound_statement "{\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }" { (expression_statement "uVar2 = puVar1[1];" (assignment_expression "uVar2 = puVar1[1]" identifier = (subscript_expression "puVar1[1]" identifier [ number_literal ])) ;) (goto_statement "goto LAB_0014b13c;" goto statement_identifier ;) })) })))) (labeled_statement "LAB_0014b100:\n        puVar1 = puVar1 + 4;" statement_identifier : (expression_statement "puVar1 = puVar1 + 4;" (assignment_expression "puVar1 = puVar1 + 4" identifier = (binary_expression "puVar1 + 4" identifier + number_literal)) ;)) (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" identifier = (binary_expression "iVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar1 != puVar9)" ( (binary_expression "puVar1 != puVar9" identifier != identifier) )) ;) })) })) (return_statement "return 0;" return number_literal ;) (ERROR "}" }))
(translation_unit "/* WARNING: Type propagation algorithm not settling */\n/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */\n/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */\n/* WARNING: Enum "STT": Some values do not have unique names */\n/* DWARF original prototype: bool get_symbol_location_info(Sized_relobj_file<32,_false> * this, uint\n   shndx, off_t offset, Symbol_location_info * info) */\n\nbool __thiscall\ngold::Sized_relobj_file<32,_false>::get_symbol_location_info\n          (Sized_relobj_file<32,_false> *this,uint shndx,off_t offset,Symbol_location_info *info)\n\n{\n  uint *puVar1;\n  Elf_Word EVar2;\n  char cVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  Xindex *pXVar7;\n  int *piVar8;\n  Object *this_00;\n  undefined4 *puVar9;\n  uint in_a3;\n  code *pcVar10;\n  undefined *puVar11;\n  int iVar12;\n  _func_int_varargs *p_Var13;\n  uint *puVar14;\n  code *pcVar15;\n  Location LStack_b0;\n  Location LStack_a0;\n  int iStack_90;\n  int iStack_8c;\n  Elf_Word EStack_88;\n  Sized_relobj_file<32,_false> *pSStack_7c;\n  int iStack_78;\n  int iStack_74;\n  Symbol_location_info *pSStack_70;\n  code *pcStack_6c;\n  undefined4 local_58;\n  section_size_type names_size;\n  section_size_type symbols_size;\n  uint local_40;\n  undefined4 local_3c;\n  uint local_38;\n  code *local_34;\n  int local_30;\n  uint local_2c;\n  \n  if (this->symtab_shndx_ != 0) {\n    local_2c = in_a3;\n    puVar1 = (uint *)(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0xe])(this,this->symtab_shndx_,&symbols_size,0);\n    p_Var13 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0x15];\n    if (p_Var13 == (_func_int_varargs *)PTR_do_section_link_00434478) {\n      EVar2 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                        (&this->elf_file_,this->symtab_shndx_);\n    }\n    else {\n      EVar2 = (*p_Var13)(this);\n    }\n    if (0xfeff < EVar2) {\n      local_40 = EVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(&this->elf_file_);\n      EVar2 = local_40 + (this->elf_file_).large_shndx_offset_;\n    }\n    local_30 = (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0xe])\n                         (this,EVar2,&names_size,0);\n    if (symbols_size >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar12 = 0;\n      puVar14 = puVar1 + (symbols_size >> 4) * 4;\n      local_38 = (uint)((int)info < 0);\n      puVar11 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar4 = *puVar1;\n          uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          if (uVar4 < names_size) {\n            local_40 = local_30 + uVar4;\n            local_3c = *(undefined4 *)(offset._0_4_ + 4);\n            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          local_58 = 9;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11);\n          iVar12 = iVar12 + 1;\n          if (puVar1 == puVar14) {\n            return false;\n          }\n        }\n        uVar4 = (*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8);\n        if (uVar4 < 0xff00) {\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\nLAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (uVar4 == 0xffff) {\n          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n          if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }\n          uVar4 = (*local_34)(pXVar7,this,iVar12);\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar12 = iVar12 + 1;\n        if (puVar1 == puVar14) {\n          return false;\n        }\n      } while( true );\n    }\n  }\n  return false;\n}\n\n" comment comment comment comment comment (declaration "bool __thiscall\ngold::Sized_relobj_file<32,_false>::get_symbol_location_info\n          (Sized_relobj_file<32,_false> *this,uint shndx,off_t offset,Symbol_location_info *info)\n\n{\n  uint *puVar1;" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::" identifier : :) identifier (ERROR "<32" < number_literal) , (ERROR "_false>::get_symbol_location_info\n          (Sized_relobj_file<32,_false> *this,uint shndx,off_t offset,Symbol_location_info *info)\n\n{\n  uint" identifier > : : (function_declarator "get_symbol_location_info\n          (Sized_relobj_file<32,_false> *this,uint shndx,off_t offset,Symbol_location_info *info)" identifier (parameter_list "(Sized_relobj_file<32,_false> *this,uint shndx,off_t offset,Symbol_location_info *info)" ( (parameter_declaration "Sized_relobj_file" type_identifier) (ERROR "<32" < number_literal) , (parameter_declaration "_false> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) , (parameter_declaration "uint shndx" type_identifier identifier) , (parameter_declaration "off_t offset" type_identifier identifier) , (parameter_declaration "Symbol_location_info *info" type_identifier (pointer_declarator "*info" * identifier)) ))) { identifier) (pointer_declarator "*puVar1" * identifier) ;) (declaration "Elf_Word EVar2;" type_identifier identifier ;) (declaration "char cVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "Xindex *pXVar7;" type_identifier (pointer_declarator "*pXVar7" * identifier) ;) (declaration "int *piVar8;" primitive_type (pointer_declarator "*piVar8" * identifier) ;) (declaration "Object *this_00;" type_identifier (pointer_declarator "*this_00" * identifier) ;) (declaration "undefined4 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "uint in_a3;" type_identifier identifier ;) (declaration "code *pcVar10;" type_identifier (pointer_declarator "*pcVar10" * identifier) ;) (declaration "undefined *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "_func_int_varargs *p_Var13;" type_identifier (pointer_declarator "*p_Var13" * identifier) ;) (declaration "uint *puVar14;" type_identifier (pointer_declarator "*puVar14" * identifier) ;) (declaration "code *pcVar15;" type_identifier (pointer_declarator "*pcVar15" * identifier) ;) (declaration "Location LStack_b0;" type_identifier identifier ;) (declaration "Location LStack_a0;" type_identifier identifier ;) (declaration "int iStack_90;" primitive_type identifier ;) (declaration "int iStack_8c;" primitive_type identifier ;) (declaration "Elf_Word EStack_88;" type_identifier identifier ;) (expression_statement "Sized_relobj_file<32,_false> *pSStack_7c;" (update_expression "Sized_relobj_file<32,_false> *pSStack_7c" (binary_expression "Sized_relobj_file<32,_false> *pSStack_7c" (binary_expression "Sized_relobj_file<32" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*pSStack_7c" * identifier)) --) ;) (declaration "int iStack_78;" primitive_type identifier ;) (declaration "int iStack_74;" primitive_type identifier ;) (declaration "Symbol_location_info *pSStack_70;" type_identifier (pointer_declarator "*pSStack_70" * identifier) ;) (declaration "code *pcStack_6c;" type_identifier (pointer_declarator "*pcStack_6c" * identifier) ;) (declaration "undefined4 local_58;" type_identifier identifier ;) (declaration "section_size_type names_size;" type_identifier identifier ;) (declaration "section_size_type symbols_size;" type_identifier identifier ;) (declaration "uint local_40;" type_identifier identifier ;) (declaration "undefined4 local_3c;" type_identifier identifier ;) (declaration "uint local_38;" type_identifier identifier ;) (declaration "code *local_34;" type_identifier (pointer_declarator "*local_34" * identifier) ;) (declaration "int local_30;" primitive_type identifier ;) (declaration "uint local_2c;" type_identifier identifier ;) (if_statement "if (this->symtab_shndx_ != 0) {\n    local_2c = in_a3;\n    puVar1 = (uint *)(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0xe])(this,this->symtab_shndx_,&symbols_size,0);\n    p_Var13 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0x15];\n    if (p_Var13 == (_func_int_varargs *)PTR_do_section_link_00434478) {\n      EVar2 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                        (&this->elf_file_,this->symtab_shndx_);\n    }\n    else {\n      EVar2 = (*p_Var13)(this);\n    }\n    if (0xfeff < EVar2) {\n      local_40 = EVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(&this->elf_file_);\n      EVar2 = local_40 + (this->elf_file_).large_shndx_offset_;\n    }\n    local_30 = (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0xe])\n                         (this,EVar2,&names_size,0);\n    if (symbols_size >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar12 = 0;\n      puVar14 = puVar1 + (symbols_size >> 4) * 4;\n      local_38 = (uint)((int)info < 0);\n      puVar11 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar4 = *puVar1;\n          uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          if (uVar4 < names_size) {\n            local_40 = local_30 + uVar4;\n            local_3c = *(undefined4 *)(offset._0_4_ + 4);\n            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          local_58 = 9;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11);\n          iVar12 = iVar12 + 1;\n          if (puVar1 == puVar14) {\n            return false;\n          }\n        }\n        uVar4 = (*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8);\n        if (uVar4 < 0xff00) {\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\nLAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (uVar4 == 0xffff) {\n          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n          if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }\n          uVar4 = (*local_34)(pXVar7,this,iVar12);\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar12 = iVar12 + 1;\n        if (puVar1 == puVar14) {\n          return false;\n        }\n      } while( true );\n    }\n  }" if (parenthesized_expression "(this->symtab_shndx_ != 0)" ( (binary_expression "this->symtab_shndx_ != 0" (field_expression "this->symtab_shndx_" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n    local_2c = in_a3;\n    puVar1 = (uint *)(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0xe])(this,this->symtab_shndx_,&symbols_size,0);\n    p_Var13 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0x15];\n    if (p_Var13 == (_func_int_varargs *)PTR_do_section_link_00434478) {\n      EVar2 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                        (&this->elf_file_,this->symtab_shndx_);\n    }\n    else {\n      EVar2 = (*p_Var13)(this);\n    }\n    if (0xfeff < EVar2) {\n      local_40 = EVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(&this->elf_file_);\n      EVar2 = local_40 + (this->elf_file_).large_shndx_offset_;\n    }\n    local_30 = (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0xe])\n                         (this,EVar2,&names_size,0);\n    if (symbols_size >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar12 = 0;\n      puVar14 = puVar1 + (symbols_size >> 4) * 4;\n      local_38 = (uint)((int)info < 0);\n      puVar11 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar4 = *puVar1;\n          uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          if (uVar4 < names_size) {\n            local_40 = local_30 + uVar4;\n            local_3c = *(undefined4 *)(offset._0_4_ + 4);\n            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          local_58 = 9;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11);\n          iVar12 = iVar12 + 1;\n          if (puVar1 == puVar14) {\n            return false;\n          }\n        }\n        uVar4 = (*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8);\n        if (uVar4 < 0xff00) {\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\nLAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (uVar4 == 0xffff) {\n          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n          if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }\n          uVar4 = (*local_34)(pXVar7,this,iVar12);\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar12 = iVar12 + 1;\n        if (puVar1 == puVar14) {\n          return false;\n        }\n      } while( true );\n    }\n  }" { (expression_statement "local_2c = in_a3;" (assignment_expression "local_2c = in_a3" identifier = identifier) ;) (expression_statement "puVar1 = (uint *)(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0xe])(this,this->symtab_shndx_,&symbols_size,0);" (assignment_expression "puVar1 = (uint *)(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0xe])(this,this->symtab_shndx_,&symbols_size,0)" identifier = (cast_expression "(uint *)(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0xe])(this,this->symtab_shndx_,&symbols_size,0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0xe])(this,this->symtab_shndx_,&symbols_size,0)" (parenthesized_expression "(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0xe])" ( (pointer_expression "*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0xe]" * (subscript_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0xe]" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<32,_false>)" ( (comma_expression "this->super_Sized_relobj<32,_false" (binary_expression "this->super_Sized_relobj<32" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) [ number_literal ])) )) (argument_list "(this,this->symtab_shndx_,&symbols_size,0)" ( identifier , (field_expression "this->symtab_shndx_" identifier -> field_identifier) , (pointer_expression "&symbols_size" & identifier) , number_literal ))))) ;) (expression_statement "p_Var13 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0x15];" (assignment_expression "p_Var13 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0x15]" identifier = (subscript_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0x15]" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<32,_false>)" ( (comma_expression "this->super_Sized_relobj<32,_false" (binary_expression "this->super_Sized_relobj<32" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) [ number_literal ])) ;) (if_statement "if (p_Var13 == (_func_int_varargs *)PTR_do_section_link_00434478) {\n      EVar2 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                        (&this->elf_file_,this->symtab_shndx_);\n    }\n    else {\n      EVar2 = (*p_Var13)(this);\n    }" if (parenthesized_expression "(p_Var13 == (_func_int_varargs *)PTR_do_section_link_00434478)" ( (binary_expression "p_Var13 == (_func_int_varargs *)PTR_do_section_link_00434478" identifier == (cast_expression "(_func_int_varargs *)PTR_do_section_link_00434478" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (compound_statement "{\n      EVar2 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                        (&this->elf_file_,this->symtab_shndx_);\n    }" { (ERROR "EVar2 = elfcpp::Elf_file<32,_false,_gold::" (comma_expression "EVar2 = elfcpp::Elf_file<32,_false,_gold" (binary_expression "EVar2 = elfcpp::Elf_file<32" (assignment_expression "EVar2 = elfcpp" identifier = identifier) (ERROR "::Elf_file" : : identifier) < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : :) (expression_statement "Object>::section_link\n                        (&this->elf_file_,this->symtab_shndx_);" (binary_expression "Object>::section_link\n                        (&this->elf_file_,this->symtab_shndx_)" identifier > (ERROR "::" : :) (call_expression "section_link\n                        (&this->elf_file_,this->symtab_shndx_)" identifier (argument_list "(&this->elf_file_,this->symtab_shndx_)" ( (pointer_expression "&this->elf_file_" & (field_expression "this->elf_file_" identifier -> field_identifier)) , (field_expression "this->symtab_shndx_" identifier -> field_identifier) )))) ;) }) (else_clause "else {\n      EVar2 = (*p_Var13)(this);\n    }" else (compound_statement "{\n      EVar2 = (*p_Var13)(this);\n    }" { (expression_statement "EVar2 = (*p_Var13)(this);" (assignment_expression "EVar2 = (*p_Var13)(this)" identifier = (call_expression "(*p_Var13)(this)" (parenthesized_expression "(*p_Var13)" ( (pointer_expression "*p_Var13" * identifier) )) (argument_list "(this)" ( identifier )))) ;) }))) (if_statement "if (0xfeff < EVar2) {\n      local_40 = EVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(&this->elf_file_);\n      EVar2 = local_40 + (this->elf_file_).large_shndx_offset_;\n    }" if (parenthesized_expression "(0xfeff < EVar2)" ( (binary_expression "0xfeff < EVar2" number_literal < identifier) )) (compound_statement "{\n      local_40 = EVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(&this->elf_file_);\n      EVar2 = local_40 + (this->elf_file_).large_shndx_offset_;\n    }" { (expression_statement "local_40 = EVar2;" (assignment_expression "local_40 = EVar2" identifier = identifier) ;) (expression_statement "(*(code *)PTR_initialize_shnum_00432a7c)(&this->elf_file_);" (call_expression "(*(code *)PTR_initialize_shnum_00432a7c)(&this->elf_file_)" (parenthesized_expression "(*(code *)PTR_initialize_shnum_00432a7c)" ( (pointer_expression "*(code *)PTR_initialize_shnum_00432a7c" * (cast_expression "(code *)PTR_initialize_shnum_00432a7c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&this->elf_file_)" ( (pointer_expression "&this->elf_file_" & (field_expression "this->elf_file_" identifier -> field_identifier)) ))) ;) (expression_statement "EVar2 = local_40 + (this->elf_file_).large_shndx_offset_;" (assignment_expression "EVar2 = local_40 + (this->elf_file_).large_shndx_offset_" identifier = (binary_expression "local_40 + (this->elf_file_).large_shndx_offset_" identifier + (field_expression "(this->elf_file_).large_shndx_offset_" (parenthesized_expression "(this->elf_file_)" ( (field_expression "this->elf_file_" identifier -> field_identifier) )) . field_identifier))) ;) })) (expression_statement "local_30 = (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0xe])\n                         (this,EVar2,&names_size,0);" (assignment_expression "local_30 = (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0xe])\n                         (this,EVar2,&names_size,0)" identifier = (call_expression "(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0xe])\n                         (this,EVar2,&names_size,0)" (parenthesized_expression "(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0xe])" ( (pointer_expression "*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0xe]" * (subscript_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0xe]" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<32,_false>)" ( (comma_expression "this->super_Sized_relobj<32,_false" (binary_expression "this->super_Sized_relobj<32" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) [ number_literal ])) )) (argument_list "(this,EVar2,&names_size,0)" ( identifier , identifier , (pointer_expression "&names_size" & identifier) , number_literal )))) ;) (if_statement "if (symbols_size >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar12 = 0;\n      puVar14 = puVar1 + (symbols_size >> 4) * 4;\n      local_38 = (uint)((int)info < 0);\n      puVar11 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar4 = *puVar1;\n          uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          if (uVar4 < names_size) {\n            local_40 = local_30 + uVar4;\n            local_3c = *(undefined4 *)(offset._0_4_ + 4);\n            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          local_58 = 9;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11);\n          iVar12 = iVar12 + 1;\n          if (puVar1 == puVar14) {\n            return false;\n          }\n        }\n        uVar4 = (*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8);\n        if (uVar4 < 0xff00) {\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\nLAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (uVar4 == 0xffff) {\n          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n          if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }\n          uVar4 = (*local_34)(pXVar7,this,iVar12);\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar12 = iVar12 + 1;\n        if (puVar1 == puVar14) {\n          return false;\n        }\n      } while( true );\n    }" if (parenthesized_expression "(symbols_size >> 4 != 0)" ( (binary_expression "symbols_size >> 4 != 0" (binary_expression "symbols_size >> 4" identifier >> number_literal) != number_literal) )) (compound_statement "{\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar12 = 0;\n      puVar14 = puVar1 + (symbols_size >> 4) * 4;\n      local_38 = (uint)((int)info < 0);\n      puVar11 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar4 = *puVar1;\n          uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          if (uVar4 < names_size) {\n            local_40 = local_30 + uVar4;\n            local_3c = *(undefined4 *)(offset._0_4_ + 4);\n            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          local_58 = 9;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11);\n          iVar12 = iVar12 + 1;\n          if (puVar1 == puVar14) {\n            return false;\n          }\n        }\n        uVar4 = (*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8);\n        if (uVar4 < 0xff00) {\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\nLAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (uVar4 == 0xffff) {\n          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n          if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }\n          uVar4 = (*local_34)(pXVar7,this,iVar12);\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar12 = iVar12 + 1;\n        if (puVar1 == puVar14) {\n          return false;\n        }\n      } while( true );\n    }" { (expression_statement "local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;" (assignment_expression "local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30" identifier = (cast_expression "(code *)PTR_sym_xindex_to_shndx_00432c30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iVar12 = 0;" (assignment_expression "iVar12 = 0" identifier = number_literal) ;) (expression_statement "puVar14 = puVar1 + (symbols_size >> 4) * 4;" (assignment_expression "puVar14 = puVar1 + (symbols_size >> 4) * 4" identifier = (binary_expression "puVar1 + (symbols_size >> 4) * 4" identifier + (binary_expression "(symbols_size >> 4) * 4" (parenthesized_expression "(symbols_size >> 4)" ( (binary_expression "symbols_size >> 4" identifier >> number_literal) )) * number_literal))) ;) (expression_statement "local_38 = (uint)((int)info < 0);" (assignment_expression "local_38 = (uint)((int)info < 0)" identifier = (call_expression "(uint)((int)info < 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)info < 0)" ( (binary_expression "(int)info < 0" (cast_expression "(int)info" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )))) ;) (expression_statement "puVar11 = PTR_s_alize_xindex_004323b4 + -0xd28;" (assignment_expression "puVar11 = PTR_s_alize_xindex_004323b4 + -0xd28" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + -0xd28" identifier + number_literal)) ;) (do_statement "do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar4 = *puVar1;\n          uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          if (uVar4 < names_size) {\n            local_40 = local_30 + uVar4;\n            local_3c = *(undefined4 *)(offset._0_4_ + 4);\n            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          local_58 = 9;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11);\n          iVar12 = iVar12 + 1;\n          if (puVar1 == puVar14) {\n            return false;\n          }\n        }\n        uVar4 = (*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8);\n        if (uVar4 < 0xff00) {\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\nLAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (uVar4 == 0xffff) {\n          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n          if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }\n          uVar4 = (*local_34)(pXVar7,this,iVar12);\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar12 = iVar12 + 1;\n        if (puVar1 == puVar14) {\n          return false;\n        }\n      } while( true );" do (compound_statement "{\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar4 = *puVar1;\n          uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          if (uVar4 < names_size) {\n            local_40 = local_30 + uVar4;\n            local_3c = *(undefined4 *)(offset._0_4_ + 4);\n            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          local_58 = 9;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11);\n          iVar12 = iVar12 + 1;\n          if (puVar1 == puVar14) {\n            return false;\n          }\n        }\n        uVar4 = (*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8);\n        if (uVar4 < 0xff00) {\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\nLAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (uVar4 == 0xffff) {\n          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n          if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }\n          uVar4 = (*local_34)(pXVar7,this,iVar12);\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar12 = iVar12 + 1;\n        if (puVar1 == puVar14) {\n          return false;\n        }\n      }" { (while_statement "while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar4 = *puVar1;\n          uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          if (uVar4 < names_size) {\n            local_40 = local_30 + uVar4;\n            local_3c = *(undefined4 *)(offset._0_4_ + 4);\n            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          local_58 = 9;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11);\n          iVar12 = iVar12 + 1;\n          if (puVar1 == puVar14) {\n            return false;\n          }\n        }" while (parenthesized_expression "((puVar1[3] & 0xf000000) == 0x4000000)" ( (binary_expression "(puVar1[3] & 0xf000000) == 0x4000000" (parenthesized_expression "(puVar1[3] & 0xf000000)" ( (binary_expression "puVar1[3] & 0xf000000" (subscript_expression "puVar1[3]" identifier [ number_literal ]) & number_literal) )) == number_literal) )) (compound_statement "{\n          uVar4 = *puVar1;\n          uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          if (uVar4 < names_size) {\n            local_40 = local_30 + uVar4;\n            local_3c = *(undefined4 *)(offset._0_4_ + 4);\n            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          local_58 = 9;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11);\n          iVar12 = iVar12 + 1;\n          if (puVar1 == puVar14) {\n            return false;\n          }\n        }" { (expression_statement "uVar4 = *puVar1;" (assignment_expression "uVar4 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (if_statement "if (uVar4 < names_size) {\n            local_40 = local_30 + uVar4;\n            local_3c = *(undefined4 *)(offset._0_4_ + 4);\n            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);\n            goto LAB_0014b100;\n          }" if (parenthesized_expression "(uVar4 < names_size)" ( (binary_expression "uVar4 < names_size" identifier < identifier) )) (compound_statement "{\n            local_40 = local_30 + uVar4;\n            local_3c = *(undefined4 *)(offset._0_4_ + 4);\n            local_58 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);\n            goto LAB_0014b100;\n          }" { (expression_statement "local_40 = local_30 + uVar4;" (assignment_expression "local_40 = local_30 + uVar4" identifier = (binary_expression "local_30 + uVar4" identifier + identifier)) ;) (expression_statement "local_3c = *(undefined4 *)(offset._0_4_ + 4);" (assignment_expression "local_3c = *(undefined4 *)(offset._0_4_ + 4)" identifier = (pointer_expression "*(undefined4 *)(offset._0_4_ + 4)" * (cast_expression "(undefined4 *)(offset._0_4_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(offset._0_4_ + 4)" ( (binary_expression "offset._0_4_ + 4" (field_expression "offset._0_4_" identifier . field_identifier) + number_literal) ))))) ;) (expression_statement "local_58 = (*(code *)PTR_strlen_0043677c)(local_40);" (assignment_expression "local_58 = (*(code *)PTR_strlen_0043677c)(local_40)" identifier = (call_expression "(*(code *)PTR_strlen_0043677c)(local_40)" (parenthesized_expression "(*(code *)PTR_strlen_0043677c)" ( (pointer_expression "*(code *)PTR_strlen_0043677c" * (cast_expression "(code *)PTR_strlen_0043677c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_40)" ( identifier )))) ;) (expression_statement "(*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40);" (call_expression "(*(code *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,local_40)" (parenthesized_expression "(*(code *)PTR__M_replace_00432a3c)" ( (pointer_expression "*(code *)PTR__M_replace_00432a3c" * (cast_expression "(code *)PTR__M_replace_00432a3c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(offset._0_4_,0,local_3c,local_40)" ( (field_expression "offset._0_4_" identifier . field_identifier) , number_literal , identifier , identifier ))) ;) (goto_statement "goto LAB_0014b100;" goto statement_identifier ;) })) (expression_statement "puVar1 = puVar1 + 4;" (assignment_expression "puVar1 = puVar1 + 4" identifier = (binary_expression "puVar1 + 4" identifier + number_literal)) ;) (expression_statement "local_58 = 9;" (assignment_expression "local_58 = 9" identifier = number_literal) ;) (expression_statement "(*(code *)PTR__M_replace_00432a3c)\n                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11);" (call_expression "(*(code *)PTR__M_replace_00432a3c)\n                    (offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11)" (parenthesized_expression "(*(code *)PTR__M_replace_00432a3c)" ( (pointer_expression "*(code *)PTR__M_replace_00432a3c" * (cast_expression "(code *)PTR__M_replace_00432a3c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(offset._0_4_,0,*(undefined4 *)(offset._0_4_ + 4),puVar11)" ( (field_expression "offset._0_4_" identifier . field_identifier) , number_literal , (pointer_expression "*(undefined4 *)(offset._0_4_ + 4)" * (cast_expression "(undefined4 *)(offset._0_4_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(offset._0_4_ + 4)" ( (binary_expression "offset._0_4_ + 4" (field_expression "offset._0_4_" identifier . field_identifier) + number_literal) )))) , identifier ))) ;) (expression_statement "iVar12 = iVar12 + 1;" (assignment_expression "iVar12 = iVar12 + 1" identifier = (binary_expression "iVar12 + 1" identifier + number_literal)) ;) (if_statement "if (puVar1 == puVar14) {\n            return false;\n          }" if (parenthesized_expression "(puVar1 == puVar14)" ( (binary_expression "puVar1 == puVar14" identifier == identifier) )) (compound_statement "{\n            return false;\n          }" { (return_statement "return false;" return false ;) })) })) (expression_statement "uVar4 = (*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8);" (assignment_expression "uVar4 = (*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8)" identifier = (binary_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8)" (binary_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff)" ( (binary_expression "*(ushort *)((int)puVar1 + 0xe) & 0xff" (pointer_expression "*(ushort *)((int)puVar1 + 0xe)" * (cast_expression "(ushort *)((int)puVar1 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar1 + 0xe)" ( (binary_expression "(int)puVar1 + 0xe" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)((int)puVar1 + 0xe) >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)((int)puVar1 + 0xe) >> 8)" ( (binary_expression "*(ushort *)((int)puVar1 + 0xe) >> 8" (pointer_expression "*(ushort *)((int)puVar1 + 0xe)" * (cast_expression "(ushort *)((int)puVar1 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar1 + 0xe)" ( (binary_expression "(int)puVar1 + 0xe" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) >> number_literal) ))))) ;) (if_statement "if (uVar4 < 0xff00) {\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\nLAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (uVar4 == 0xffff) {\n          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n          if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }\n          uVar4 = (*local_34)(pXVar7,this,iVar12);\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" if (parenthesized_expression "(uVar4 < 0xff00)" ( (binary_expression "uVar4 < 0xff00" identifier < number_literal) )) (compound_statement "{\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\nLAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }\n          }\n        }" { (if_statement "if (shndx == uVar4) {\n            uVar4 = puVar1[1];\nLAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }\n          }" if (parenthesized_expression "(shndx == uVar4)" ( (binary_expression "shndx == uVar4" identifier == identifier) )) (compound_statement "{\n            uVar4 = puVar1[1];\nLAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }\n          }" { (expression_statement "uVar4 = puVar1[1];" (assignment_expression "uVar4 = puVar1[1]" identifier = (subscript_expression "puVar1[1]" identifier [ number_literal ])) ;) (labeled_statement "LAB_0014b13c:\n            uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" statement_identifier : (expression_statement "uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;)) (if_statement "if (local_38 == 0) {\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }" if (parenthesized_expression "(local_38 == 0)" ( (binary_expression "local_38 == 0" identifier == number_literal) )) (compound_statement "{\n              if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }\n            }" { (if_statement "if (info == (Symbol_location_info *)0x0) {\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }" if (parenthesized_expression "(info == (Symbol_location_info *)0x0)" ( (binary_expression "info == (Symbol_location_info *)0x0" identifier == (cast_expression "(Symbol_location_info *)0x0" ( (type_descriptor "Symbol_location_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }" { (if_statement "if (uVar4 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }" if (parenthesized_expression "(uVar4 <= local_2c)" ( (binary_expression "uVar4 <= local_2c" identifier <= identifier) )) (compound_statement "{\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }" { (expression_statement "uVar5 = puVar1[2];" (assignment_expression "uVar5 = puVar1[2]" identifier = (subscript_expression "puVar1[2]" identifier [ number_literal ])) ;) (expression_statement "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (goto_statement "goto LAB_0014b16c;" goto statement_identifier ;) })) }) (else_clause "else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }" else (compound_statement "{\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }\n              }" { (expression_statement "uVar5 = puVar1[2];" (assignment_expression "uVar5 = puVar1[2]" identifier = (subscript_expression "puVar1[2]" identifier [ number_literal ])) ;) (expression_statement "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (if_statement "if (info == (Symbol_location_info *)0x0) {\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }" if (parenthesized_expression "(info == (Symbol_location_info *)0x0)" ( (binary_expression "info == (Symbol_location_info *)0x0" identifier == (cast_expression "(Symbol_location_info *)0x0" ( (type_descriptor "Symbol_location_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }\n                }" { (labeled_statement "LAB_0014b16c:\n                  if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }" statement_identifier : (if_statement "if (local_2c < uVar4 + iVar6) {\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }" if (parenthesized_expression "(local_2c < uVar4 + iVar6)" ( (binary_expression "local_2c < uVar4 + iVar6" identifier < (binary_expression "uVar4 + iVar6" identifier + identifier)) )) (compound_statement "{\n                    uVar4 = *puVar1;\n                    *(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n                    iVar12 = offset._0_4_ + 0x18;\n                    if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }\n                    iVar6 = 0x5c;\n                    pcVar15 = get_symbol_name;\n                    piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);\n                    puVar11 = PTR_do_gold_unreachable_004323c4;\n                    (*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);\n                    if (piVar8[0x2d] == 0) {\n                      return false;\n                    }\n                    iStack_74 = offset._0_4_;\n                    pcVar10 = *(code **)(puVar11 + 0x2e90a0);\n                    pSStack_7c = this;\n                    iStack_78 = iVar12;\n                    pSStack_70 = info;\n                    pcStack_6c = pcVar15;\n                    if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }\n                    this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);\n                    (**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);\nLAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);\n                  }" { (expression_statement "uVar4 = *puVar1;" (assignment_expression "uVar4 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;" (assignment_expression "*(uint *)(offset._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf" (pointer_expression "*(uint *)(offset._0_4_ + 0x30)" * (cast_expression "(uint *)(offset._0_4_ + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(offset._0_4_ + 0x30)" ( (binary_expression "offset._0_4_ + 0x30" (field_expression "offset._0_4_" identifier . field_identifier) + number_literal) )))) = (binary_expression "*(byte *)(puVar1 + 3) & 0xf" (pointer_expression "*(byte *)(puVar1 + 3)" * (cast_expression "(byte *)(puVar1 + 3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 3)" ( (binary_expression "puVar1 + 3" identifier + number_literal) )))) & number_literal)) ;) (expression_statement "uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar4 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "iVar12 = offset._0_4_ + 0x18;" (assignment_expression "iVar12 = offset._0_4_ + 0x18" identifier = (binary_expression "offset._0_4_ + 0x18" (field_expression "offset._0_4_" identifier . field_identifier) + number_literal)) ;) (if_statement "if (names_size < uVar4) {\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }" if (parenthesized_expression "(names_size < uVar4)" ( (binary_expression "names_size < uVar4" identifier < identifier) )) (compound_statement "{\n                      (*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return true;\n                    }" { (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" ( (pointer_expression "*(code *)PTR_assign_00432ac8" * (cast_expression "(code *)PTR_assign_00432ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar12,PTR_s_alize_xindex_004323b4 + -0xd28)" ( identifier , (binary_expression "PTR_s_alize_xindex_004323b4 + -0xd28" identifier + number_literal) ))) ;) (return_statement "return true;" return true ;) })) (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar12,local_30 + uVar4)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" ( (pointer_expression "*(code *)PTR_assign_00432ac8" * (cast_expression "(code *)PTR_assign_00432ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar12,local_30 + uVar4)" ( identifier , (binary_expression "local_30 + uVar4" identifier + identifier) ))) ;) (if_statement "if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }" if (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0" (pointer_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_00432be0 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_00432be0 + 8)" ( (binary_expression "*(int *)PTR_parameters_00432be0 + 8" (pointer_expression "*(int *)PTR_parameters_00432be0" * (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) != number_literal) )) (compound_statement "{\n                      cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                      if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }\n                      return true;\n                    }" { (expression_statement "cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);" (assignment_expression "cVar3 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" identifier = (pointer_expression "*(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" * (cast_expression "(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949" (pointer_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_00432be0 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_00432be0 + 8)" ( (binary_expression "*(int *)PTR_parameters_00432be0 + 8" (pointer_expression "*(int *)PTR_parameters_00432be0" * (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) + number_literal) ))))) ;) (if_statement "if ((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)) {\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }" if (parenthesized_expression "((cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0))" ( (binary_expression "(cVar3 != '\0') &&\n                         (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)" (parenthesized_expression "(cVar3 != '\0')" ( (binary_expression "cVar3 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0)" ( (comma_expression "iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3), iVar6 != 0" (assignment_expression "iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3)" identifier = (call_expression "(*(code *)PTR_cplus_demangle_004335b0)\n                                            (*(undefined4 *)(offset._0_4_ + 0x18),3)" (parenthesized_expression "(*(code *)PTR_cplus_demangle_004335b0)" ( (pointer_expression "*(code *)PTR_cplus_demangle_004335b0" * (cast_expression "(code *)PTR_cplus_demangle_004335b0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)(offset._0_4_ + 0x18),3)" ( (pointer_expression "*(undefined4 *)(offset._0_4_ + 0x18)" * (cast_expression "(undefined4 *)(offset._0_4_ + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(offset._0_4_ + 0x18)" ( (binary_expression "offset._0_4_ + 0x18" (field_expression "offset._0_4_" identifier . field_identifier) + number_literal) )))) , number_literal )))) , (binary_expression "iVar6 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                        (*(code *)PTR_assign_00432ac8)(iVar12,iVar6);\n                        (*(code *)PTR_free_00436800)(iVar6);\n                        return (bool)cVar3;\n                      }" { (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar12,iVar6);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar12,iVar6)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" ( (pointer_expression "*(code *)PTR_assign_00432ac8" * (cast_expression "(code *)PTR_assign_00432ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar12,iVar6)" ( identifier , identifier ))) ;) (expression_statement "(*(code *)PTR_free_00436800)(iVar6);" (call_expression "(*(code *)PTR_free_00436800)(iVar6)" (parenthesized_expression "(*(code *)PTR_free_00436800)" ( (pointer_expression "*(code *)PTR_free_00436800" * (cast_expression "(code *)PTR_free_00436800" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier ))) ;) (return_statement "return (bool)cVar3;" return (cast_expression "(bool)cVar3" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) (return_statement "return true;" return true ;) })) (expression_statement "iVar6 = 0x5c;" (assignment_expression "iVar6 = 0x5c" identifier = number_literal) ;) (expression_statement "pcVar15 = get_symbol_name;" (assignment_expression "pcVar15 = get_symbol_name" identifier = identifier) ;) (expression_statement "piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec);" (assignment_expression "piVar8 = (int *)(PTR_s_alize_xindex_004323b4 + -0x5cec)" identifier = (cast_expression "(int *)(PTR_s_alize_xindex_004323b4 + -0x5cec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_alize_xindex_004323b4 + -0x5cec)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x5cec" identifier + number_literal) )))) ;) (expression_statement "puVar11 = PTR_do_gold_unreachable_004323c4;" (assignment_expression "puVar11 = PTR_do_gold_unreachable_004323c4" identifier = identifier) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c);" (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                              (piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c)" (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 "(piVar8,0x5c,PTR_s_alize_xindex_004323b4 + 0x46c)" ( identifier , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x46c" identifier + number_literal) ))) ;) (if_statement "if (piVar8[0x2d] == 0) {\n                      return false;\n                    }" if (parenthesized_expression "(piVar8[0x2d] == 0)" ( (binary_expression "piVar8[0x2d] == 0" (subscript_expression "piVar8[0x2d]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                      return false;\n                    }" { (return_statement "return false;" return false ;) })) (expression_statement "iStack_74 = offset._0_4_;" (assignment_expression "iStack_74 = offset._0_4_" identifier = (field_expression "offset._0_4_" identifier . field_identifier)) ;) (expression_statement "pcVar10 = *(code **)(puVar11 + 0x2e90a0);" (assignment_expression "pcVar10 = *(code **)(puVar11 + 0x2e90a0)" identifier = (pointer_expression "*(code **)(puVar11 + 0x2e90a0)" * (cast_expression "(code **)(puVar11 + 0x2e90a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2e90a0)" ( (binary_expression "puVar11 + 0x2e90a0" identifier + number_literal) ))))) ;) (expression_statement "pSStack_7c = this;" (assignment_expression "pSStack_7c = this" identifier = identifier) ;) (expression_statement "iStack_78 = iVar12;" (assignment_expression "iStack_78 = iVar12" identifier = identifier) ;) (expression_statement "pSStack_70 = info;" (assignment_expression "pSStack_70 = info" identifier = identifier) ;) (expression_statement "pcStack_6c = pcVar15;" (assignment_expression "pcStack_6c = pcVar15" identifier = identifier) ;) (if_statement "if (*(code **)(*piVar8 + 0x38) == pcVar10) {\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }\n                    else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }" if (parenthesized_expression "(*(code **)(*piVar8 + 0x38) == pcVar10)" ( (binary_expression "*(code **)(*piVar8 + 0x38) == pcVar10" (pointer_expression "*(code **)(*piVar8 + 0x38)" * (cast_expression "(code **)(*piVar8 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar8 + 0x38)" ( (binary_expression "*piVar8 + 0x38" (pointer_expression "*piVar8" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);\n                      if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }\n                    }" { (labeled_statement "elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);" statement_identifier (ERROR "::Elf_file<32,_false,_gold::Object>:" : : (comma_expression "Elf_file<32,_false,_gold" (binary_expression "Elf_file<32" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : : identifier > :) : (expression_statement "section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d]);" (call_expression "section_contents\n                                (&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d])" identifier (argument_list "(&LStack_a0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 piVar8[0x2d])" ( (pointer_expression "&LStack_a0" & identifier) , (call_expression "(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24)" (parenthesized_expression "(Elf_file<32,_false,_gold::Object> *)" ( (ERROR "Elf_file<32,_false,_gold::" (comma_expression "Elf_file<32,_false,_gold" (binary_expression "Elf_file<32" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : :) (binary_expression "Object> *" identifier > (pointer_expression "*" * identifier)) )) (argument_list "(piVar8 + 0x24)" ( (binary_expression "piVar8 + 0x24" identifier + number_literal) ))) , (subscript_expression "piVar8[0x2d]" identifier [ number_literal ]) ))) ;)) (if_statement "if (LStack_a0.data_size._0_4_ == 0) {\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }" if (parenthesized_expression "(LStack_a0.data_size._0_4_ == 0)" ( (binary_expression "LStack_a0.data_size._0_4_ == 0" (field_expression "LStack_a0.data_size._0_4_" (field_expression "LStack_a0.data_size" identifier . field_identifier) . field_identifier) == number_literal) )) (compound_statement "{\n                        iStack_8c = LStack_a0.data_size._4_4_;\n                        if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }\n                        this_00 = (Object *)piVar8[7];\n                        if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                        iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        pcVar15 = *(code **)(*piVar8 + 0x54);\n                        uVar4 = piVar8[0x2d];\n                        if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;\n                        goto LAB_0014b450;\n                      }" { (expression_statement "iStack_8c = LStack_a0.data_size._4_4_;" (assignment_expression "iStack_8c = LStack_a0.data_size._4_4_" identifier = (field_expression "LStack_a0.data_size._4_4_" (field_expression "LStack_a0.data_size" identifier . field_identifier) . field_identifier)) ;) (if_statement "if (LStack_a0.data_size._4_4_ == 0) {\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }" if (parenthesized_expression "(LStack_a0.data_size._4_4_ == 0)" ( (binary_expression "LStack_a0.data_size._4_4_ == 0" (field_expression "LStack_a0.data_size._4_4_" (field_expression "LStack_a0.data_size" identifier . field_identifier) . field_identifier) == number_literal) )) (compound_statement "{\n                          iVar12 = *(int *)(puVar11 + 0x2e909c);\n                          goto LAB_0014b43c;\n                        }" { (expression_statement "iVar12 = *(int *)(puVar11 + 0x2e909c);" (assignment_expression "iVar12 = *(int *)(puVar11 + 0x2e909c)" identifier = (pointer_expression "*(int *)(puVar11 + 0x2e909c)" * (cast_expression "(int *)(puVar11 + 0x2e909c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2e909c)" ( (binary_expression "puVar11 + 0x2e909c" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0014b43c;" goto statement_identifier ;) })) (expression_statement "this_00 = (Object *)piVar8[7];" (assignment_expression "this_00 = (Object *)piVar8[7]" identifier = (cast_expression "(Object *)piVar8[7]" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar8[7]" identifier [ number_literal ]))) ;) (if_statement "if (this_00 == (Object *)0x0) goto LAB_0014b65c;" if (parenthesized_expression "(this_00 == (Object *)0x0)" ( (binary_expression "this_00 == (Object *)0x0" identifier == (cast_expression "(Object *)0x0" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0014b65c;" goto statement_identifier ;)) (expression_statement "iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);" (assignment_expression "iVar12 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_)" identifier = (call_expression "(**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_)" (parenthesized_expression "(**(code **)(puVar11 + 0x2e70dc))" ( (pointer_expression "**(code **)(puVar11 + 0x2e70dc)" * (pointer_expression "*(code **)(puVar11 + 0x2e70dc)" * (cast_expression "(code **)(puVar11 + 0x2e70dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2e70dc)" ( (binary_expression "puVar11 + 0x2e70dc" identifier + number_literal) ))))) )) (argument_list "(&this_00->offset_)" ( (pointer_expression "&this_00->offset_" & (field_expression "this_00->offset_" identifier -> field_identifier)) )))) ;) (expression_statement "pcVar15 = *(code **)(*piVar8 + 0x54);" (assignment_expression "pcVar15 = *(code **)(*piVar8 + 0x54)" identifier = (pointer_expression "*(code **)(*piVar8 + 0x54)" * (cast_expression "(code **)(*piVar8 + 0x54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar8 + 0x54)" ( (binary_expression "*piVar8 + 0x54" (pointer_expression "*piVar8" * identifier) + number_literal) ))))) ;) (expression_statement "uVar4 = piVar8[0x2d];" (assignment_expression "uVar4 = piVar8[0x2d]" identifier = (subscript_expression "piVar8[0x2d]" identifier [ number_literal ])) ;) (if_statement "if (pcVar15 != *(code **)(puVar11 + 0x2e90b8)) goto LAB_0014b584;" if (parenthesized_expression "(pcVar15 != *(code **)(puVar11 + 0x2e90b8))" ( (binary_expression "pcVar15 != *(code **)(puVar11 + 0x2e90b8)" identifier != (pointer_expression "*(code **)(puVar11 + 0x2e90b8)" * (cast_expression "(code **)(puVar11 + 0x2e90b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2e90b8)" ( (binary_expression "puVar11 + 0x2e90b8" identifier + number_literal) ))))) )) (goto_statement "goto LAB_0014b584;" goto statement_identifier ;)) (goto_statement "goto LAB_0014b450;" goto statement_identifier ;) })) }) (else_clause "else {\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }" else (compound_statement "{\n                      iVar12 = (**(code **)(*piVar8 + 0x38))();\nLAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);\n                      uVar4 = piVar8[0x2d];\n                      if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }\n                      elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);\n                      if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }\n                    }" { (expression_statement "iVar12 = (**(code **)(*piVar8 + 0x38))();" (assignment_expression "iVar12 = (**(code **)(*piVar8 + 0x38))()" identifier = (call_expression "(**(code **)(*piVar8 + 0x38))()" (parenthesized_expression "(**(code **)(*piVar8 + 0x38))" ( (pointer_expression "**(code **)(*piVar8 + 0x38)" * (pointer_expression "*(code **)(*piVar8 + 0x38)" * (cast_expression "(code **)(*piVar8 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar8 + 0x38)" ( (binary_expression "*piVar8 + 0x38" (pointer_expression "*piVar8" * identifier) + number_literal) ))))) )) (argument_list "()" ( )))) ;) (labeled_statement "LAB_0014b43c:\n                      pcVar15 = *(code **)(*piVar8 + 0x54);" statement_identifier : (expression_statement "pcVar15 = *(code **)(*piVar8 + 0x54);" (assignment_expression "pcVar15 = *(code **)(*piVar8 + 0x54)" identifier = (pointer_expression "*(code **)(*piVar8 + 0x54)" * (cast_expression "(code **)(*piVar8 + 0x54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar8 + 0x54)" ( (binary_expression "*piVar8 + 0x54" (pointer_expression "*piVar8" * identifier) + number_literal) ))))) ;)) (expression_statement "uVar4 = piVar8[0x2d];" (assignment_expression "uVar4 = piVar8[0x2d]" identifier = (subscript_expression "piVar8[0x2d]" identifier [ number_literal ])) ;) (if_statement "if (pcVar15 == *(code **)(puVar11 + 0x2e90b8)) {\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }\n                      else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }" if (parenthesized_expression "(pcVar15 == *(code **)(puVar11 + 0x2e90b8))" ( (binary_expression "pcVar15 == *(code **)(puVar11 + 0x2e90b8)" identifier == (pointer_expression "*(code **)(puVar11 + 0x2e90b8)" * (cast_expression "(code **)(puVar11 + 0x2e90b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2e90b8)" ( (binary_expression "puVar11 + 0x2e90b8" identifier + number_literal) ))))) )) (compound_statement "{\nLAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);\n                        if (uVar4 < 0xff00) goto LAB_0014b46c;\nLAB_0014b59c:\n                        EStack_88 = uVar4;\n                        (**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);\n                        uVar4 = EStack_88 + piVar8[0x2a];\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }" { (labeled_statement "LAB_0014b450:\n                        uVar4 = elfcpp::Elf_file<32,_false,_gold::Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);" statement_identifier : (ERROR "uVar4 = elfcpp::Elf_file<32,_false,_gold::" (comma_expression "uVar4 = elfcpp::Elf_file<32,_false,_gold" (binary_expression "uVar4 = elfcpp::Elf_file<32" (assignment_expression "uVar4 = elfcpp" identifier = identifier) (ERROR "::Elf_file" : : identifier) < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : :) (expression_statement "Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4);" (binary_expression "Object>::section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4)" identifier > (ERROR "::" : :) (call_expression "section_link\n                                          ((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4)" identifier (argument_list "((Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                           uVar4)" ( (call_expression "(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24)" (parenthesized_expression "(Elf_file<32,_false,_gold::Object> *)" ( (ERROR "Elf_file<32,_false,_gold::" (comma_expression "Elf_file<32,_false,_gold" (binary_expression "Elf_file<32" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : :) (binary_expression "Object> *" identifier > (pointer_expression "*" * identifier)) )) (argument_list "(piVar8 + 0x24)" ( (binary_expression "piVar8 + 0x24" identifier + number_literal) ))) , identifier )))) ;)) (if_statement "if (uVar4 < 0xff00) goto LAB_0014b46c;" if (parenthesized_expression "(uVar4 < 0xff00)" ( (binary_expression "uVar4 < 0xff00" identifier < number_literal) )) (goto_statement "goto LAB_0014b46c;" goto statement_identifier ;)) (labeled_statement "LAB_0014b59c:\n                        EStack_88 = uVar4;" statement_identifier : (expression_statement "EStack_88 = uVar4;" (assignment_expression "EStack_88 = uVar4" identifier = identifier) ;)) (expression_statement "(**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24);" (call_expression "(**(code **)(puVar11 + 0x2e76bc))(piVar8 + 0x24)" (parenthesized_expression "(**(code **)(puVar11 + 0x2e76bc))" ( (pointer_expression "**(code **)(puVar11 + 0x2e76bc)" * (pointer_expression "*(code **)(puVar11 + 0x2e76bc)" * (cast_expression "(code **)(puVar11 + 0x2e76bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2e76bc)" ( (binary_expression "puVar11 + 0x2e76bc" identifier + number_literal) ))))) )) (argument_list "(piVar8 + 0x24)" ( (binary_expression "piVar8 + 0x24" identifier + number_literal) ))) ;) (expression_statement "uVar4 = EStack_88 + piVar8[0x2a];" (assignment_expression "uVar4 = EStack_88 + piVar8[0x2a]" identifier = (binary_expression "EStack_88 + piVar8[0x2a]" identifier + (subscript_expression "piVar8[0x2a]" identifier [ number_literal ]))) ;) (expression_statement "pcVar15 = *(code **)(*piVar8 + 0x38);" (assignment_expression "pcVar15 = *(code **)(*piVar8 + 0x38)" identifier = (pointer_expression "*(code **)(*piVar8 + 0x38)" * (cast_expression "(code **)(*piVar8 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar8 + 0x38)" ( (binary_expression "*piVar8 + 0x38" (pointer_expression "*piVar8" * identifier) + number_literal) ))))) ;) }) (else_clause "else {\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }" else (compound_statement "{\nLAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);\n                        if (0xfeff < uVar4) goto LAB_0014b59c;\nLAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);\n                      }" { (labeled_statement "LAB_0014b584:\n                        uVar4 = (*pcVar15)(piVar8);" statement_identifier : (expression_statement "uVar4 = (*pcVar15)(piVar8);" (assignment_expression "uVar4 = (*pcVar15)(piVar8)" identifier = (call_expression "(*pcVar15)(piVar8)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(piVar8)" ( identifier )))) ;)) (if_statement "if (0xfeff < uVar4) goto LAB_0014b59c;" if (parenthesized_expression "(0xfeff < uVar4)" ( (binary_expression "0xfeff < uVar4" number_literal < identifier) )) (goto_statement "goto LAB_0014b59c;" goto statement_identifier ;)) (labeled_statement "LAB_0014b46c:\n                        pcVar15 = *(code **)(*piVar8 + 0x38);" statement_identifier : (expression_statement "pcVar15 = *(code **)(*piVar8 + 0x38);" (assignment_expression "pcVar15 = *(code **)(*piVar8 + 0x38)" identifier = (pointer_expression "*(code **)(*piVar8 + 0x38)" * (cast_expression "(code **)(*piVar8 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar8 + 0x38)" ( (binary_expression "*piVar8 + 0x38" (pointer_expression "*piVar8" * identifier) + number_literal) ))))) ;)) }))) (if_statement "if (pcVar15 != pcVar10) {\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }" if (parenthesized_expression "(pcVar15 != pcVar10)" ( (binary_expression "pcVar15 != pcVar10" identifier != identifier) )) (compound_statement "{\n                        cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\nLAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));\n                      }" { (expression_statement "cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0);" (assignment_expression "cVar3 = (*pcVar15)(piVar8,uVar4,&iStack_90,0)" identifier = (call_expression "(*pcVar15)(piVar8,uVar4,&iStack_90,0)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(piVar8,uVar4,&iStack_90,0)" ( identifier , identifier , (pointer_expression "&iStack_90" & identifier) , number_literal )))) ;) (expression_statement "puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);" (assignment_expression "puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10)" identifier = (cast_expression "(undefined4 *)(iVar12 + iVar6 * 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + iVar6 * 0x10)" ( (binary_expression "iVar12 + iVar6 * 0x10" identifier + (binary_expression "iVar6 * 0x10" identifier * number_literal)) )))) ;) (if_statement "if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }" if (parenthesized_expression "((undefined4 *)(iVar12 + iStack_8c) <= puVar9)" ( (binary_expression "(undefined4 *)(iVar12 + iStack_8c) <= puVar9" (cast_expression "(undefined4 *)(iVar12 + iStack_8c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + iStack_8c)" ( (binary_expression "iVar12 + iStack_8c" identifier + identifier) ))) <= identifier) )) (compound_statement "{\n                          return false;\n                        }" { (return_statement "return false;" return false ;) })) (labeled_statement "LAB_0014b500:\n                        return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));" statement_identifier : (return_statement "return (bool)(cVar3 + (char)((uint)*puVar9 >> 0x18));" return (cast_expression "(bool)(cVar3 + (char)((uint)*puVar9 >> 0x18))" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(cVar3 + (char)((uint)*puVar9 >> 0x18))" ( (binary_expression "cVar3 + (char)((uint)*puVar9 >> 0x18)" identifier + (cast_expression "(char)((uint)*puVar9 >> 0x18)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "((uint)*puVar9 >> 0x18)" ( (binary_expression "(uint)*puVar9 >> 0x18" (binary_expression "(uint)*puVar9" (parenthesized_expression "(uint)" ( identifier )) * identifier) >> number_literal) )))) ))) ;)) })) (labeled_statement "elfcpp::Elf_file<32,_false,_gold::Object>::section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);" statement_identifier (ERROR "::Elf_file<32,_false,_gold::Object>:" : : (comma_expression "Elf_file<32,_false,_gold" (binary_expression "Elf_file<32" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : : identifier > :) : (expression_statement "section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4);" (call_expression "section_contents\n                                (&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4)" identifier (argument_list "(&LStack_b0,(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24),\n                                 uVar4)" ( (pointer_expression "&LStack_b0" & identifier) , (call_expression "(Elf_file<32,_false,_gold::Object> *)(piVar8 + 0x24)" (parenthesized_expression "(Elf_file<32,_false,_gold::Object> *)" ( (ERROR "Elf_file<32,_false,_gold::" (comma_expression "Elf_file<32,_false,_gold" (binary_expression "Elf_file<32" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : :) (binary_expression "Object> *" identifier > (pointer_expression "*" * identifier)) )) (argument_list "(piVar8 + 0x24)" ( (binary_expression "piVar8 + 0x24" identifier + number_literal) ))) , identifier ))) ;)) (if_statement "if (LStack_b0.data_size._0_4_ == 0) {\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }" if (parenthesized_expression "(LStack_b0.data_size._0_4_ == 0)" ( (binary_expression "LStack_b0.data_size._0_4_ == 0" (field_expression "LStack_b0.data_size._0_4_" (field_expression "LStack_b0.data_size" identifier . field_identifier) . field_identifier) == number_literal) )) (compound_statement "{\n                        iStack_90 = LStack_b0.data_size._4_4_;\n                        if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }\n                        puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);\n                        if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }\n                        goto LAB_0014b500;\n                      }" { (expression_statement "iStack_90 = LStack_b0.data_size._4_4_;" (assignment_expression "iStack_90 = LStack_b0.data_size._4_4_" identifier = (field_expression "LStack_b0.data_size._4_4_" (field_expression "LStack_b0.data_size" identifier . field_identifier) . field_identifier)) ;) (if_statement "if (LStack_b0.data_size._4_4_ == 0) {\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }\n                        else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }" if (parenthesized_expression "(LStack_b0.data_size._4_4_ == 0)" ( (binary_expression "LStack_b0.data_size._4_4_ == 0" (field_expression "LStack_b0.data_size._4_4_" (field_expression "LStack_b0.data_size" identifier . field_identifier) . field_identifier) == number_literal) )) (compound_statement "{\n                          cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);\n                        }" { (expression_statement "cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c);" (assignment_expression "cVar3 = (char)*(undefined4 *)(puVar11 + 0x2e909c)" identifier = (cast_expression "(char)*(undefined4 *)(puVar11 + 0x2e909c)" ( (type_descriptor "char" primitive_type) ) (pointer_expression "*(undefined4 *)(puVar11 + 0x2e909c)" * (cast_expression "(undefined4 *)(puVar11 + 0x2e909c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2e909c)" ( (binary_expression "puVar11 + 0x2e909c" identifier + number_literal) )))))) ;) }) (else_clause "else {\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }" else (compound_statement "{\n                          this_00 = (Object *)piVar8[7];\n                          if (this_00 == (Object *)0x0) goto LAB_0014b65c;\n                          cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);\n                        }" { (expression_statement "this_00 = (Object *)piVar8[7];" (assignment_expression "this_00 = (Object *)piVar8[7]" identifier = (cast_expression "(Object *)piVar8[7]" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar8[7]" identifier [ number_literal ]))) ;) (if_statement "if (this_00 == (Object *)0x0) goto LAB_0014b65c;" if (parenthesized_expression "(this_00 == (Object *)0x0)" ( (binary_expression "this_00 == (Object *)0x0" identifier == (cast_expression "(Object *)0x0" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0014b65c;" goto statement_identifier ;)) (expression_statement "cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_);" (assignment_expression "cVar3 = (**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_)" identifier = (call_expression "(**(code **)(puVar11 + 0x2e70dc))(&this_00->offset_)" (parenthesized_expression "(**(code **)(puVar11 + 0x2e70dc))" ( (pointer_expression "**(code **)(puVar11 + 0x2e70dc)" * (pointer_expression "*(code **)(puVar11 + 0x2e70dc)" * (cast_expression "(code **)(puVar11 + 0x2e70dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2e70dc)" ( (binary_expression "puVar11 + 0x2e70dc" identifier + number_literal) ))))) )) (argument_list "(&this_00->offset_)" ( (pointer_expression "&this_00->offset_" & (field_expression "this_00->offset_" identifier -> field_identifier)) )))) ;) }))) (expression_statement "puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10);" (assignment_expression "puVar9 = (undefined4 *)(iVar12 + iVar6 * 0x10)" identifier = (cast_expression "(undefined4 *)(iVar12 + iVar6 * 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + iVar6 * 0x10)" ( (binary_expression "iVar12 + iVar6 * 0x10" identifier + (binary_expression "iVar6 * 0x10" identifier * number_literal)) )))) ;) (if_statement "if ((undefined4 *)(iVar12 + iStack_8c) <= puVar9) {\n                          return false;\n                        }" if (parenthesized_expression "((undefined4 *)(iVar12 + iStack_8c) <= puVar9)" ( (binary_expression "(undefined4 *)(iVar12 + iStack_8c) <= puVar9" (cast_expression "(undefined4 *)(iVar12 + iStack_8c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + iStack_8c)" ( (binary_expression "iVar12 + iStack_8c" identifier + identifier) ))) <= identifier) )) (compound_statement "{\n                          return false;\n                        }" { (return_statement "return false;" return false ;) })) (goto_statement "goto LAB_0014b500;" goto statement_identifier ;) })) }))) (expression_statement "this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40);" (assignment_expression "this_00 = (Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40)" identifier = (cast_expression "(Object *)(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40)" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2e6ff4) + -0x5a40)" ( (binary_expression "*(int *)(puVar11 + 0x2e6ff4) + -0x5a40" (pointer_expression "*(int *)(puVar11 + 0x2e6ff4)" * (cast_expression "(int *)(puVar11 + 0x2e6ff4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2e6ff4)" ( (binary_expression "puVar11 + 0x2e6ff4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24);" (call_expression "(**(code **)(puVar11 + 0x2e7004))\n                              (this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24)" (parenthesized_expression "(**(code **)(puVar11 + 0x2e7004))" ( (pointer_expression "**(code **)(puVar11 + 0x2e7004)" * (pointer_expression "*(code **)(puVar11 + 0x2e7004)" * (cast_expression "(code **)(puVar11 + 0x2e7004)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2e7004)" ( (binary_expression "puVar11 + 0x2e7004" identifier + number_literal) ))))) )) (argument_list "(this_00,0xc0,*(int *)(puVar11 + 0x2e6ff4) + 0x24)" ( identifier , number_literal , (binary_expression "*(int *)(puVar11 + 0x2e6ff4) + 0x24" (pointer_expression "*(int *)(puVar11 + 0x2e6ff4)" * (cast_expression "(int *)(puVar11 + 0x2e6ff4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2e6ff4)" ( (binary_expression "puVar11 + 0x2e6ff4" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_0014b65c:\n                    /* WARNING: Subroutine does not return */\n                    Object::input_file(this_00);" statement_identifier : comment (labeled_statement "Object::input_file(this_00);" statement_identifier : (ERROR ":" :) (expression_statement "input_file(this_00);" (call_expression "input_file(this_00)" identifier (argument_list "(this_00)" ( identifier ))) ;))) }))) })) }))) })) })) }) (else_clause "else if (uVar4 == 0xffff) {\n          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n          if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }\n          uVar4 = (*local_34)(pXVar7,this,iVar12);\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" else (if_statement "if (uVar4 == 0xffff) {\n          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n          if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }\n          uVar4 = (*local_34)(pXVar7,this,iVar12);\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" if (parenthesized_expression "(uVar4 == 0xffff)" ( (binary_expression "uVar4 == 0xffff" identifier == number_literal) )) (compound_statement "{\n          pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n          if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }\n          uVar4 = (*local_34)(pXVar7,this,iVar12);\n          if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" { (expression_statement "pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;" (assignment_expression "pXVar7 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_" identifier = (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<32,_false>)" ( (comma_expression "this->super_Sized_relobj<32,_false" (binary_expression "this->super_Sized_relobj<32" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier)) ;) (if_statement "if (pXVar7 == (Xindex *)0x0) {\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }" if (parenthesized_expression "(pXVar7 == (Xindex *)0x0)" ( (binary_expression "pXVar7 == (Xindex *)0x0" identifier == (cast_expression "(Xindex *)0x0" ( (type_descriptor "Xindex *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);\n            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;\n          }" { (expression_statement "pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this);" (assignment_expression "pXVar7 = (Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this)" identifier = (cast_expression "(Xindex *)\n                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this)" ( (type_descriptor "Xindex *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])(this)" (parenthesized_expression "(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b])" ( (pointer_expression "*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b]" * (subscript_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                       [0x1b]" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<32,_false>)" ( (comma_expression "this->super_Sized_relobj<32,_false" (binary_expression "this->super_Sized_relobj<32" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) [ number_literal ])) )) (argument_list "(this)" ( identifier ))))) ;) (expression_statement "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7;" (assignment_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = pXVar7" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<32,_false>)" ( (comma_expression "this->super_Sized_relobj<32,_false" (binary_expression "this->super_Sized_relobj<32" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) = identifier) ;) })) (expression_statement "uVar4 = (*local_34)(pXVar7,this,iVar12);" (assignment_expression "uVar4 = (*local_34)(pXVar7,this,iVar12)" identifier = (call_expression "(*local_34)(pXVar7,this,iVar12)" (parenthesized_expression "(*local_34)" ( (pointer_expression "*local_34" * identifier) )) (argument_list "(pXVar7,this,iVar12)" ( identifier , identifier , identifier )))) ;) (if_statement "if (shndx == uVar4) {\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }" if (parenthesized_expression "(shndx == uVar4)" ( (binary_expression "shndx == uVar4" identifier == identifier) )) (compound_statement "{\n            uVar4 = puVar1[1];\n            goto LAB_0014b13c;\n          }" { (expression_statement "uVar4 = puVar1[1];" (assignment_expression "uVar4 = puVar1[1]" identifier = (subscript_expression "puVar1[1]" identifier [ number_literal ])) ;) (goto_statement "goto LAB_0014b13c;" goto statement_identifier ;) })) })))) (labeled_statement "LAB_0014b100:\n        puVar1 = puVar1 + 4;" statement_identifier : (expression_statement "puVar1 = puVar1 + 4;" (assignment_expression "puVar1 = puVar1 + 4" identifier = (binary_expression "puVar1 + 4" identifier + number_literal)) ;)) (expression_statement "iVar12 = iVar12 + 1;" (assignment_expression "iVar12 = iVar12 + 1" identifier = (binary_expression "iVar12 + 1" identifier + number_literal)) ;) (if_statement "if (puVar1 == puVar14) {\n          return false;\n        }" if (parenthesized_expression "(puVar1 == puVar14)" ( (binary_expression "puVar1 == puVar14" identifier == identifier) )) (compound_statement "{\n          return false;\n        }" { (return_statement "return false;" return false ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) })) (return_statement "return false;" return false ;) (ERROR "}" }))
(translation_unit "uint gold::Sized_relobj_file<32,false>::get_symbol_location_info\n               (uint param_1,longlong param_2,Symbol_location_info *param_3)\n\n{\n  uint *puVar1;\n  uint uVar2;\n  undefined4 uVar3;\n  Symbol_location_info *pSVar4;\n  uint uVar5;\n  int iVar6;\n  int in_a2;\n  uint in_a3;\n  undefined *puVar7;\n  int iVar8;\n  uint *puVar9;\n  uint local_48;\n  uint local_44;\n  uint local_40;\n  undefined4 local_3c;\n  uint local_38;\n  code *local_34;\n  int local_30;\n  uint local_2c;\n  \n  if (*(int *)(param_1 + 0xb4) != 0) {\n    local_2c = in_a3;\n    puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);\n    if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }\n    else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }\n    if (0xfeff < uVar2) {\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }\n    local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);\n    if (local_44 >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }\n  }\n  return 0;\n}\n\n" (declaration "uint gold::Sized_relobj_file<32,false>::get_symbol_location_info\n               (uint param_1,longlong param_2,Symbol_location_info *param_3)\n\n{\n  uint *puVar1;" type_identifier (ERROR "gold::" identifier : :) identifier (ERROR "<32" < number_literal) , (ERROR "false>::get_symbol_location_info\n               (uint param_1,longlong param_2,Symbol_location_info *param_3)\n\n{\n  uint" identifier > : : (function_declarator "get_symbol_location_info\n               (uint param_1,longlong param_2,Symbol_location_info *param_3)" identifier (parameter_list "(uint param_1,longlong param_2,Symbol_location_info *param_3)" ( (parameter_declaration "uint param_1" type_identifier identifier) , (parameter_declaration "longlong param_2" type_identifier identifier) , (parameter_declaration "Symbol_location_info *param_3" type_identifier (pointer_declarator "*param_3" * identifier)) ))) { identifier) (pointer_declarator "*puVar1" * identifier) ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "Symbol_location_info *pSVar4;" type_identifier (pointer_declarator "*pSVar4" * identifier) ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int in_a2;" primitive_type identifier ;) (declaration "uint in_a3;" type_identifier identifier ;) (declaration "undefined *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "uint *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "uint local_48;" type_identifier identifier ;) (declaration "uint local_44;" type_identifier identifier ;) (declaration "uint local_40;" type_identifier identifier ;) (declaration "undefined4 local_3c;" type_identifier identifier ;) (declaration "uint local_38;" type_identifier identifier ;) (declaration "code *local_34;" type_identifier (pointer_declarator "*local_34" * identifier) ;) (declaration "int local_30;" primitive_type identifier ;) (declaration "uint local_2c;" type_identifier identifier ;) (if_statement "if (*(int *)(param_1 + 0xb4) != 0) {\n    local_2c = in_a3;\n    puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);\n    if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }\n    else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }\n    if (0xfeff < uVar2) {\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }\n    local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);\n    if (local_44 >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0xb4) != 0)" ( (binary_expression "*(int *)(param_1 + 0xb4) != 0" (pointer_expression "*(int *)(param_1 + 0xb4)" * (cast_expression "(int *)(param_1 + 0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb4)" ( (binary_expression "param_1 + 0xb4" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    local_2c = in_a3;\n    puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);\n    if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }\n    else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }\n    if (0xfeff < uVar2) {\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }\n    local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);\n    if (local_44 >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }\n  }" { (expression_statement "local_2c = in_a3;" (assignment_expression "local_2c = in_a3" identifier = identifier) ;) (expression_statement "puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);" (assignment_expression "puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0)" identifier = (cast_expression "(uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x38))" ( (pointer_expression "**(code **)(*(int *)param_1 + 0x38)" * (pointer_expression "*(code **)(*(int *)param_1 + 0x38)" * (cast_expression "(code **)(*(int *)param_1 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1 + 0x38)" ( (binary_expression "*(int *)param_1 + 0x38" (pointer_expression "*(int *)param_1" * (cast_expression "(int *)param_1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) ))))) )) (argument_list "(param_1,*(int *)(param_1 + 0xb4),&local_44,0)" ( identifier , (pointer_expression "*(int *)(param_1 + 0xb4)" * (cast_expression "(int *)(param_1 + 0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb4)" ( (binary_expression "param_1 + 0xb4" identifier + number_literal) )))) , (pointer_expression "&local_44" & identifier) , number_literal ))))) ;) (if_statement "if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }\n    else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }" if (parenthesized_expression "(*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478)" ( (binary_expression "*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478" (pointer_expression "*(code **)(*(int *)param_1 + 0x54)" * (cast_expression "(code **)(*(int *)param_1 + 0x54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1 + 0x54)" ( (binary_expression "*(int *)param_1 + 0x54" (pointer_expression "*(int *)param_1" * (cast_expression "(int *)param_1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) == (cast_expression "(code *)PTR_do_section_link_00434478" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (compound_statement "{\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }" { (ERROR "uVar2 = elfcpp::Elf_file<32,false,gold::" (comma_expression "uVar2 = elfcpp::Elf_file<32,false,gold" (binary_expression "uVar2 = elfcpp::Elf_file<32" (assignment_expression "uVar2 = elfcpp" identifier = identifier) (ERROR "::Elf_file" : : identifier) < number_literal) , (comma_expression "false,gold" false , identifier)) : :) (expression_statement "Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));" (binary_expression "Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4))" identifier > (ERROR "::" : :) (call_expression "section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4))" identifier (argument_list "((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4))" ( (call_expression "(Elf_file<32,false,gold::Object> *)(param_1 + 0x90)" (parenthesized_expression "(Elf_file<32,false,gold::Object> *)" ( (ERROR "Elf_file<32,false,gold::" (comma_expression "Elf_file<32,false,gold" (binary_expression "Elf_file<32" identifier < number_literal) , (comma_expression "false,gold" false , identifier)) : :) (binary_expression "Object> *" identifier > (pointer_expression "*" * identifier)) )) (argument_list "(param_1 + 0x90)" ( (binary_expression "param_1 + 0x90" identifier + number_literal) ))) , (pointer_expression "*(uint *)(param_1 + 0xb4)" * (cast_expression "(uint *)(param_1 + 0xb4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb4)" ( (binary_expression "param_1 + 0xb4" identifier + number_literal) )))) )))) ;) }) (else_clause "else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }" else (compound_statement "{\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }" { (expression_statement "uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);" (assignment_expression "uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1)" identifier = (call_expression "(**(code **)(*(int *)param_1 + 0x54))(param_1)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x54))" ( (pointer_expression "**(code **)(*(int *)param_1 + 0x54)" * (pointer_expression "*(code **)(*(int *)param_1 + 0x54)" * (cast_expression "(code **)(*(int *)param_1 + 0x54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1 + 0x54)" ( (binary_expression "*(int *)param_1 + 0x54" (pointer_expression "*(int *)param_1" * (cast_expression "(int *)param_1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) }))) (if_statement "if (0xfeff < uVar2) {\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }" if (parenthesized_expression "(0xfeff < uVar2)" ( (binary_expression "0xfeff < uVar2" number_literal < identifier) )) (compound_statement "{\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }" { (expression_statement "local_40 = uVar2;" (assignment_expression "local_40 = uVar2" identifier = identifier) ;) (expression_statement "(*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);" (call_expression "(*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90)" (parenthesized_expression "(*(code *)PTR_initialize_shnum_00432a7c)" ( (pointer_expression "*(code *)PTR_initialize_shnum_00432a7c" * (cast_expression "(code *)PTR_initialize_shnum_00432a7c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1 + 0x90)" ( (binary_expression "param_1 + 0x90" identifier + number_literal) ))) ;) (expression_statement "uVar2 = local_40 + *(int *)(param_1 + 0xa8);" (assignment_expression "uVar2 = local_40 + *(int *)(param_1 + 0xa8)" identifier = (binary_expression "local_40 + *(int *)(param_1 + 0xa8)" identifier + (pointer_expression "*(int *)(param_1 + 0xa8)" * (cast_expression "(int *)(param_1 + 0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa8)" ( (binary_expression "param_1 + 0xa8" identifier + number_literal) )))))) ;) })) (expression_statement "local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);" (assignment_expression "local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0)" identifier = (call_expression "(**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x38))" ( (pointer_expression "**(code **)(*(int *)param_1 + 0x38)" * (pointer_expression "*(code **)(*(int *)param_1 + 0x38)" * (cast_expression "(code **)(*(int *)param_1 + 0x38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1 + 0x38)" ( (binary_expression "*(int *)param_1 + 0x38" (pointer_expression "*(int *)param_1" * (cast_expression "(int *)param_1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) ))))) )) (argument_list "(param_1,uVar2,&local_48,0)" ( identifier , identifier , (pointer_expression "&local_48" & identifier) , number_literal )))) ;) (if_statement "if (local_44 >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }" if (parenthesized_expression "(local_44 >> 4 != 0)" ( (binary_expression "local_44 >> 4 != 0" (binary_expression "local_44 >> 4" identifier >> number_literal) != number_literal) )) (compound_statement "{\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }" { (expression_statement "local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;" (assignment_expression "local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30" identifier = (cast_expression "(code *)PTR_sym_xindex_to_shndx_00432c30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" identifier = number_literal) ;) (expression_statement "puVar9 = puVar1 + (local_44 >> 4) * 4;" (assignment_expression "puVar9 = puVar1 + (local_44 >> 4) * 4" identifier = (binary_expression "puVar1 + (local_44 >> 4) * 4" identifier + (binary_expression "(local_44 >> 4) * 4" (parenthesized_expression "(local_44 >> 4)" ( (binary_expression "local_44 >> 4" identifier >> number_literal) )) * number_literal))) ;) (expression_statement "local_38 = (uint)(in_a2 < 0);" (assignment_expression "local_38 = (uint)(in_a2 < 0)" identifier = (call_expression "(uint)(in_a2 < 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(in_a2 < 0)" ( (binary_expression "in_a2 < 0" identifier < number_literal) )))) ;) (expression_statement "puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;" (assignment_expression "puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28" identifier = (binary_expression "PTR_s_alize_xindex_004323b4 + -0xd28" identifier + number_literal)) ;) (do_statement "do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);" do (compound_statement "{\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      }" { (while_statement "while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }" while (parenthesized_expression "((puVar1[3] & 0xf000000) == 0x4000000)" ( (binary_expression "(puVar1[3] & 0xf000000) == 0x4000000" (parenthesized_expression "(puVar1[3] & 0xf000000)" ( (binary_expression "puVar1[3] & 0xf000000" (subscript_expression "puVar1[3]" identifier [ number_literal ]) & number_literal) )) == number_literal) )) (compound_statement "{\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }" { (expression_statement "uVar2 = *puVar1;" (assignment_expression "uVar2 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" ( (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" ( (binary_expression "uVar2 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" ( (binary_expression "uVar2 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" ( (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" ( (binary_expression "uVar2 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (if_statement "if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }" if (parenthesized_expression "(uVar2 < local_48)" ( (binary_expression "uVar2 < local_48" identifier < identifier) )) (compound_statement "{\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }" { (expression_statement "local_40 = local_30 + uVar2;" (assignment_expression "local_40 = local_30 + uVar2" identifier = (binary_expression "local_30 + uVar2" identifier + identifier)) ;) (expression_statement "local_3c = *(undefined4 *)(param_2._0_4_ + 4);" (assignment_expression "local_3c = *(undefined4 *)(param_2._0_4_ + 4)" identifier = (pointer_expression "*(undefined4 *)(param_2._0_4_ + 4)" * (cast_expression "(undefined4 *)(param_2._0_4_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2._0_4_ + 4)" ( (binary_expression "param_2._0_4_ + 4" (field_expression "param_2._0_4_" identifier . field_identifier) + number_literal) ))))) ;) (expression_statement "uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);" (assignment_expression "uVar3 = (*(code *)PTR_strlen_0043677c)(local_40)" identifier = (call_expression "(*(code *)PTR_strlen_0043677c)(local_40)" (parenthesized_expression "(*(code *)PTR_strlen_0043677c)" ( (pointer_expression "*(code *)PTR_strlen_0043677c" * (cast_expression "(code *)PTR_strlen_0043677c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_40)" ( identifier )))) ;) (expression_statement "(*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);" (call_expression "(*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3)" (parenthesized_expression "(*(code *)PTR__M_replace_00432a3c)" ( (pointer_expression "*(code *)PTR__M_replace_00432a3c" * (cast_expression "(code *)PTR__M_replace_00432a3c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2._0_4_,0,local_3c,local_40,uVar3)" ( (field_expression "param_2._0_4_" identifier . field_identifier) , number_literal , identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_0014b100;" goto statement_identifier ;) })) (expression_statement "puVar1 = puVar1 + 4;" (assignment_expression "puVar1 = puVar1 + 4" identifier = (binary_expression "puVar1 + 4" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);" (call_expression "(*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9)" (parenthesized_expression "(*(code *)PTR__M_replace_00432a3c)" ( (pointer_expression "*(code *)PTR__M_replace_00432a3c" * (cast_expression "(code *)PTR__M_replace_00432a3c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9)" ( (field_expression "param_2._0_4_" identifier . field_identifier) , number_literal , (pointer_expression "*(undefined4 *)(param_2._0_4_ + 4)" * (cast_expression "(undefined4 *)(param_2._0_4_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2._0_4_ + 4)" ( (binary_expression "param_2._0_4_ + 4" (field_expression "param_2._0_4_" identifier . field_identifier) + number_literal) )))) , identifier , number_literal ))) ;) (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" identifier = (binary_expression "iVar8 + 1" identifier + number_literal)) ;) (if_statement "if (puVar1 == puVar9) {\n            return 0;\n          }" if (parenthesized_expression "(puVar1 == puVar9)" ( (binary_expression "puVar1 == puVar9" identifier == identifier) )) (compound_statement "{\n            return 0;\n          }" { (return_statement "return 0;" return number_literal ;) })) })) (expression_statement "pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));" (assignment_expression "pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8))" identifier = (cast_expression "(Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8))" ( (type_descriptor "Symbol_location_info *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8))" ( (binary_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8)" (binary_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff)" ( (binary_expression "*(ushort *)((int)puVar1 + 0xe) & 0xff" (pointer_expression "*(ushort *)((int)puVar1 + 0xe)" * (cast_expression "(ushort *)((int)puVar1 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar1 + 0xe)" ( (binary_expression "(int)puVar1 + 0xe" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)((int)puVar1 + 0xe) >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)((int)puVar1 + 0xe) >> 8)" ( (binary_expression "*(ushort *)((int)puVar1 + 0xe) >> 8" (pointer_expression "*(ushort *)((int)puVar1 + 0xe)" * (cast_expression "(ushort *)((int)puVar1 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar1 + 0xe)" ( (binary_expression "(int)puVar1 + 0xe" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) >> number_literal) )))) )))) ;) (if_statement "if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" if (parenthesized_expression "(pSVar4 < (Symbol_location_info *)0xff00)" ( (binary_expression "pSVar4 < (Symbol_location_info *)0xff00" identifier < (cast_expression "(Symbol_location_info *)0xff00" ( (type_descriptor "Symbol_location_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }" { (if_statement "if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }" if (parenthesized_expression "(param_3 == pSVar4)" ( (binary_expression "param_3 == pSVar4" identifier == identifier) )) (compound_statement "{\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }" { (expression_statement "uVar2 = puVar1[1];" (assignment_expression "uVar2 = puVar1[1]" identifier = (subscript_expression "puVar1[1]" identifier [ number_literal ])) ;) (labeled_statement "LAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" statement_identifier : (expression_statement "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" ( (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" ( (binary_expression "uVar2 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" ( (binary_expression "uVar2 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" ( (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" ( (binary_expression "uVar2 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;)) (if_statement "if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }" if (parenthesized_expression "(local_38 == 0)" ( (binary_expression "local_38 == 0" identifier == number_literal) )) (compound_statement "{\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }" { (if_statement "if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }" if (parenthesized_expression "(in_a2 == 0)" ( (binary_expression "in_a2 == 0" identifier == number_literal) )) (compound_statement "{\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }" { (if_statement "if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }" if (parenthesized_expression "(uVar2 <= local_2c)" ( (binary_expression "uVar2 <= local_2c" identifier <= identifier) )) (compound_statement "{\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }" { (expression_statement "uVar5 = puVar1[2];" (assignment_expression "uVar5 = puVar1[2]" identifier = (subscript_expression "puVar1[2]" identifier [ number_literal ])) ;) (expression_statement "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (goto_statement "goto LAB_0014b16c;" goto statement_identifier ;) })) }) (else_clause "else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }" else (compound_statement "{\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }" { (expression_statement "uVar5 = puVar1[2];" (assignment_expression "uVar5 = puVar1[2]" identifier = (subscript_expression "puVar1[2]" identifier [ number_literal ])) ;) (expression_statement "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (if_statement "if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }" if (parenthesized_expression "(in_a2 == 0)" ( (binary_expression "in_a2 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }" { (labeled_statement "LAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }" statement_identifier : (if_statement "if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }" if (parenthesized_expression "(local_2c < uVar2 + iVar6)" ( (binary_expression "local_2c < uVar2 + iVar6" identifier < (binary_expression "uVar2 + iVar6" identifier + identifier)) )) (compound_statement "{\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }" { (expression_statement "uVar2 = *puVar1;" (assignment_expression "uVar2 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;" (assignment_expression "*(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf" (pointer_expression "*(uint *)(param_2._0_4_ + 0x30)" * (cast_expression "(uint *)(param_2._0_4_ + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2._0_4_ + 0x30)" ( (binary_expression "param_2._0_4_ + 0x30" (field_expression "param_2._0_4_" identifier . field_identifier) + number_literal) )))) = (binary_expression "*(byte *)(puVar1 + 3) & 0xf" (pointer_expression "*(byte *)(puVar1 + 3)" * (cast_expression "(byte *)(puVar1 + 3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 3)" ( (binary_expression "puVar1 + 3" identifier + number_literal) )))) & number_literal)) ;) (expression_statement "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" ( (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" ( (binary_expression "uVar2 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" ( (binary_expression "uVar2 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" ( (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" ( (binary_expression "uVar2 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "iVar8 = param_2._0_4_ + 0x18;" (assignment_expression "iVar8 = param_2._0_4_ + 0x18" identifier = (binary_expression "param_2._0_4_ + 0x18" (field_expression "param_2._0_4_" identifier . field_identifier) + number_literal)) ;) (if_statement "if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }" if (parenthesized_expression "(local_48 < uVar2)" ( (binary_expression "local_48 < uVar2" identifier < identifier) )) (compound_statement "{\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }" { (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" ( (pointer_expression "*(code *)PTR_assign_00432ac8" * (cast_expression "(code *)PTR_assign_00432ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28)" ( identifier , (binary_expression "PTR_s_alize_xindex_004323b4 + -0xd28" identifier + number_literal) ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" ( (pointer_expression "*(code *)PTR_assign_00432ac8" * (cast_expression "(code *)PTR_assign_00432ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8,local_30 + uVar2)" ( identifier , (binary_expression "local_30 + uVar2" identifier + identifier) ))) ;) (if_statement "if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }" if (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0" (pointer_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_00432be0 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_00432be0 + 8)" ( (binary_expression "*(int *)PTR_parameters_00432be0 + 8" (pointer_expression "*(int *)PTR_parameters_00432be0" * (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) == number_literal) )) (compound_statement "{\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }" { (expression_statement "uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);" (assignment_expression "uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c)" identifier = (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c)" (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 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c)" ( (binary_expression "PTR_s_alize_xindex_004323b4 + -0x5cec" identifier + number_literal) , number_literal , (binary_expression "PTR_s_alize_xindex_004323b4 + 0x46c" identifier + number_literal) )))) ;) (return_statement "return uVar2;" return identifier ;) })) (expression_statement "uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);" (assignment_expression "uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" identifier = (binary_expression "(uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949" (pointer_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_00432be0 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_00432be0 + 8)" ( (binary_expression "*(int *)PTR_parameters_00432be0 + 8" (pointer_expression "*(int *)PTR_parameters_00432be0" * (cast_expression "(int *)PTR_parameters_00432be0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) + number_literal) ))))) ;) (if_statement "if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }" if (parenthesized_expression "((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0))" ( (binary_expression "(uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)" (parenthesized_expression "(uVar2 != 0)" ( (binary_expression "uVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)" ( (comma_expression "iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0" (assignment_expression "iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3)" identifier = (call_expression "(*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3)" (parenthesized_expression "(*(code *)PTR_cplus_demangle_004335b0)" ( (pointer_expression "*(code *)PTR_cplus_demangle_004335b0" * (cast_expression "(code *)PTR_cplus_demangle_004335b0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)(param_2._0_4_ + 0x18),3)" ( (pointer_expression "*(undefined4 *)(param_2._0_4_ + 0x18)" * (cast_expression "(undefined4 *)(param_2._0_4_ + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2._0_4_ + 0x18)" ( (binary_expression "param_2._0_4_ + 0x18" (field_expression "param_2._0_4_" identifier . field_identifier) + number_literal) )))) , number_literal )))) , (binary_expression "iVar6 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }" { (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar8,iVar6);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar8,iVar6)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" ( (pointer_expression "*(code *)PTR_assign_00432ac8" * (cast_expression "(code *)PTR_assign_00432ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8,iVar6)" ( identifier , identifier ))) ;) (expression_statement "(*(code *)PTR_free_00436800)(iVar6);" (call_expression "(*(code *)PTR_free_00436800)(iVar6)" (parenthesized_expression "(*(code *)PTR_free_00436800)" ( (pointer_expression "*(code *)PTR_free_00436800" * (cast_expression "(code *)PTR_free_00436800" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier ))) ;) (return_statement "return uVar2;" return identifier ;) })) (return_statement "return 1;" return number_literal ;) }))) })) }))) })) })) }) (else_clause "else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" else (if_statement "if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" if (parenthesized_expression "(pSVar4 == (Symbol_location_info *)0xffff)" ( (binary_expression "pSVar4 == (Symbol_location_info *)0xffff" identifier == (cast_expression "(Symbol_location_info *)0xffff" ( (type_descriptor "Symbol_location_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" { (expression_statement "iVar6 = *(int *)(param_1 + 0x30);" (assignment_expression "iVar6 = *(int *)(param_1 + 0x30)" identifier = (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (if_statement "if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }" { (expression_statement "iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);" (assignment_expression "iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1)" identifier = (call_expression "(**(code **)(*(int *)param_1 + 0x6c))(param_1)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x6c))" ( (pointer_expression "**(code **)(*(int *)param_1 + 0x6c)" * (pointer_expression "*(code **)(*(int *)param_1 + 0x6c)" * (cast_expression "(code **)(*(int *)param_1 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1 + 0x6c)" ( (binary_expression "*(int *)param_1 + 0x6c" (pointer_expression "*(int *)param_1" * (cast_expression "(int *)param_1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "*(int *)(param_1 + 0x30) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x30) = iVar6" (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) = identifier) ;) })) (expression_statement "pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);" (assignment_expression "pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8)" identifier = (cast_expression "(Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8)" ( (type_descriptor "Symbol_location_info *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*local_34)(iVar6,param_1,iVar8)" (parenthesized_expression "(*local_34)" ( (pointer_expression "*local_34" * identifier) )) (argument_list "(iVar6,param_1,iVar8)" ( identifier , identifier , identifier ))))) ;) (if_statement "if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }" if (parenthesized_expression "(param_3 == pSVar4)" ( (binary_expression "param_3 == pSVar4" identifier == identifier) )) (compound_statement "{\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }" { (expression_statement "uVar2 = puVar1[1];" (assignment_expression "uVar2 = puVar1[1]" identifier = (subscript_expression "puVar1[1]" identifier [ number_literal ])) ;) (goto_statement "goto LAB_0014b13c;" goto statement_identifier ;) })) })))) (labeled_statement "LAB_0014b100:\n        puVar1 = puVar1 + 4;" statement_identifier : (expression_statement "puVar1 = puVar1 + 4;" (assignment_expression "puVar1 = puVar1 + 4" identifier = (binary_expression "puVar1 + 4" identifier + number_literal)) ;)) (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" identifier = (binary_expression "iVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar1 != puVar9)" ( (binary_expression "puVar1 != puVar9" identifier != identifier) )) ;) })) })) (return_statement "return 0;" return number_literal ;) (ERROR "}" }))
(translation_unit (declaration TYPE (ERROR IDENT : :) IDENT (ERROR < LIT) , (ERROR IDENT > : : (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) { IDENT) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * 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 ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (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 *)) ) IDENT)) + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression & IDENT) , LIT ))))) ;) (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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) + LIT) )))) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (compound_statement { (ERROR (comma_expression (binary_expression (assignment_expression IDENT = IDENT) (ERROR : : IDENT) < LIT) , (comma_expression BOOL , IDENT)) : :) (expression_statement (binary_expression IDENT > (ERROR : :) (call_expression IDENT (argument_list ( (call_expression (parenthesized_expression ( (ERROR (comma_expression (binary_expression IDENT < LIT) , (comma_expression BOOL , IDENT)) : :) (binary_expression IDENT > (pointer_expression * IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) ))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (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 *)) ) IDENT)) + LIT) ))))) )) (argument_list ( IDENT )))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (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 *)) ) IDENT)) + LIT) ))))) )) (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) * LIT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) + LIT) ))))) ;) (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 ( (field_expression IDENT . field_identifier) , LIT , IDENT , IDENT , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (field_expression IDENT . field_identifier) , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) + LIT) )))) , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (return_statement return LIT ;) })) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) & LIT) )) << LIT) | (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) >> LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT < (binary_expression IDENT + IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (field_expression IDENT . field_identifier) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) ))) ;) (return_statement return LIT ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (binary_expression IDENT + IDENT) ))) ;) (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 *)) ) 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 = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) + LIT) )))) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (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 *)) ) (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) + LIT) )))) , LIT )))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (return_statement return IDENT ;) })) (return_statement return LIT ;) }))) })) }))) })) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == 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 *)) ) IDENT)) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (goto_statement goto statement_identifier ;) })) })))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) })) (return_statement return LIT ;) (ERROR }))
(declaration "uint gold::Sized_relobj_file<32,false>::get_symbol_location_info\n               (uint param_1,longlong param_2,Symbol_location_info *param_3)\n\n{\n  uint *puVar1;" (type_identifier "uint") (ERROR "gold::" (identifier "gold") (: ":") (: ":")) (identifier "Sized_relobj_file") (ERROR "<32" (< "<") (number_literal "32")) (, ",") (ERROR "false>::get_symbol_location_info\n               (uint param_1,longlong param_2,Symbol_location_info *param_3)\n\n{\n  uint" (identifier "false") (> ">") (: ":") (: ":") (function_declarator "get_symbol_location_info\n               (uint param_1,longlong param_2,Symbol_location_info *param_3)" (identifier "get_symbol_location_info") (parameter_list "(uint param_1,longlong param_2,Symbol_location_info *param_3)" (( "(") (parameter_declaration "uint param_1" (type_identifier "uint") (identifier "param_1")) (, ",") (parameter_declaration "longlong param_2" (type_identifier "longlong") (identifier "param_2")) (, ",") (parameter_declaration "Symbol_location_info *param_3" (type_identifier "Symbol_location_info") (pointer_declarator "*param_3" (* "*") (identifier "param_3"))) () ")"))) ({ "{") (identifier "uint")) (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "uint uVar2;" (type_identifier "uint") (identifier "uVar2") (; ";")) (declaration "undefined4 uVar3;" (type_identifier "undefined4") (identifier "uVar3") (; ";")) (declaration "Symbol_location_info *pSVar4;" (type_identifier "Symbol_location_info") (pointer_declarator "*pSVar4" (* "*") (identifier "pSVar4")) (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "int in_a2;" (primitive_type "int") (identifier "in_a2") (; ";")) (declaration "uint in_a3;" (type_identifier "uint") (identifier "in_a3") (; ";")) (declaration "undefined *puVar7;" (type_identifier "undefined") (pointer_declarator "*puVar7" (* "*") (identifier "puVar7")) (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "uint *puVar9;" (type_identifier "uint") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "uint local_48;" (type_identifier "uint") (identifier "local_48") (; ";")) (declaration "uint local_44;" (type_identifier "uint") (identifier "local_44") (; ";")) (declaration "uint local_40;" (type_identifier "uint") (identifier "local_40") (; ";")) (declaration "undefined4 local_3c;" (type_identifier "undefined4") (identifier "local_3c") (; ";")) (declaration "uint local_38;" (type_identifier "uint") (identifier "local_38") (; ";")) (declaration "code *local_34;" (type_identifier "code") (pointer_declarator "*local_34" (* "*") (identifier "local_34")) (; ";")) (declaration "int local_30;" (primitive_type "int") (identifier "local_30") (; ";")) (declaration "uint local_2c;" (type_identifier "uint") (identifier "local_2c") (; ";")) (if_statement "if (*(int *)(param_1 + 0xb4) != 0) {\n    local_2c = in_a3;\n    puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);\n    if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }\n    else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }\n    if (0xfeff < uVar2) {\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }\n    local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);\n    if (local_44 >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }\n  }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0xb4) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0xb4) != 0" (pointer_expression "*(int *)(param_1 + 0xb4)" (* "*") (cast_expression "(int *)(param_1 + 0xb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb4)" (( "(") (binary_expression "param_1 + 0xb4" (identifier "param_1") (+ "+") (number_literal "0xb4")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    local_2c = in_a3;\n    puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);\n    if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }\n    else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }\n    if (0xfeff < uVar2) {\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }\n    local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);\n    if (local_44 >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }\n  }" ({ "{") (expression_statement "local_2c = in_a3;" (assignment_expression "local_2c = in_a3" (identifier "local_2c") (= "=") (identifier "in_a3")) (; ";")) (expression_statement "puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);" (assignment_expression "puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0)" (identifier "puVar1") (= "=") (cast_expression "(uint *)(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(*(int *)param_1 + 0x38))\n                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x38))" (( "(") (pointer_expression "**(code **)(*(int *)param_1 + 0x38)" (* "*") (pointer_expression "*(code **)(*(int *)param_1 + 0x38)" (* "*") (cast_expression "(code **)(*(int *)param_1 + 0x38)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)param_1 + 0x38)" (( "(") (binary_expression "*(int *)param_1 + 0x38" (pointer_expression "*(int *)param_1" (* "*") (cast_expression "(int *)param_1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (+ "+") (number_literal "0x38")) () ")"))))) () ")")) (argument_list "(param_1,*(int *)(param_1 + 0xb4),&local_44,0)" (( "(") (identifier "param_1") (, ",") (pointer_expression "*(int *)(param_1 + 0xb4)" (* "*") (cast_expression "(int *)(param_1 + 0xb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb4)" (( "(") (binary_expression "param_1 + 0xb4" (identifier "param_1") (+ "+") (number_literal "0xb4")) () ")")))) (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") () ")"))))) (; ";")) (if_statement "if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }\n    else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }" (if "if") (parenthesized_expression "(*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478)" (( "(") (binary_expression "*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478" (pointer_expression "*(code **)(*(int *)param_1 + 0x54)" (* "*") (cast_expression "(code **)(*(int *)param_1 + 0x54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)param_1 + 0x54)" (( "(") (binary_expression "*(int *)param_1 + 0x54" (pointer_expression "*(int *)param_1" (* "*") (cast_expression "(int *)param_1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (+ "+") (number_literal "0x54")) () ")")))) (== "==") (cast_expression "(code *)PTR_do_section_link_00434478" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_do_section_link_00434478"))) () ")")) (compound_statement "{\n      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));\n    }" ({ "{") (ERROR "uVar2 = elfcpp::Elf_file<32,false,gold::" (comma_expression "uVar2 = elfcpp::Elf_file<32,false,gold" (binary_expression "uVar2 = elfcpp::Elf_file<32" (assignment_expression "uVar2 = elfcpp" (identifier "uVar2") (= "=") (identifier "elfcpp")) (ERROR "::Elf_file" (: ":") (: ":") (identifier "Elf_file")) (< "<") (number_literal "32")) (, ",") (comma_expression "false,gold" (false "false") (, ",") (identifier "gold"))) (: ":") (: ":")) (expression_statement "Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4));" (binary_expression "Object>::section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4))" (identifier "Object") (> ">") (ERROR "::" (: ":") (: ":")) (call_expression "section_link\n                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4))" (identifier "section_link") (argument_list "((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),\n                         *(uint *)(param_1 + 0xb4))" (( "(") (call_expression "(Elf_file<32,false,gold::Object> *)(param_1 + 0x90)" (parenthesized_expression "(Elf_file<32,false,gold::Object> *)" (( "(") (ERROR "Elf_file<32,false,gold::" (comma_expression "Elf_file<32,false,gold" (binary_expression "Elf_file<32" (identifier "Elf_file") (< "<") (number_literal "32")) (, ",") (comma_expression "false,gold" (false "false") (, ",") (identifier "gold"))) (: ":") (: ":")) (binary_expression "Object> *" (identifier "Object") (> ">") (pointer_expression "*" (* "*") (identifier ""))) () ")")) (argument_list "(param_1 + 0x90)" (( "(") (binary_expression "param_1 + 0x90" (identifier "param_1") (+ "+") (number_literal "0x90")) () ")"))) (, ",") (pointer_expression "*(uint *)(param_1 + 0xb4)" (* "*") (cast_expression "(uint *)(param_1 + 0xb4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb4)" (( "(") (binary_expression "param_1 + 0xb4" (identifier "param_1") (+ "+") (number_literal "0xb4")) () ")")))) () ")")))) (; ";")) (} "}")) (else_clause "else {\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }" (else "else") (compound_statement "{\n      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);\n    }" ({ "{") (expression_statement "uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);" (assignment_expression "uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1)" (identifier "uVar2") (= "=") (call_expression "(**(code **)(*(int *)param_1 + 0x54))(param_1)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x54))" (( "(") (pointer_expression "**(code **)(*(int *)param_1 + 0x54)" (* "*") (pointer_expression "*(code **)(*(int *)param_1 + 0x54)" (* "*") (cast_expression "(code **)(*(int *)param_1 + 0x54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)param_1 + 0x54)" (( "(") (binary_expression "*(int *)param_1 + 0x54" (pointer_expression "*(int *)param_1" (* "*") (cast_expression "(int *)param_1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (+ "+") (number_literal "0x54")) () ")"))))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (} "}")))) (if_statement "if (0xfeff < uVar2) {\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }" (if "if") (parenthesized_expression "(0xfeff < uVar2)" (( "(") (binary_expression "0xfeff < uVar2" (number_literal "0xfeff") (< "<") (identifier "uVar2")) () ")")) (compound_statement "{\n      local_40 = uVar2;\n      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);\n      uVar2 = local_40 + *(int *)(param_1 + 0xa8);\n    }" ({ "{") (expression_statement "local_40 = uVar2;" (assignment_expression "local_40 = uVar2" (identifier "local_40") (= "=") (identifier "uVar2")) (; ";")) (expression_statement "(*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);" (call_expression "(*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90)" (parenthesized_expression "(*(code *)PTR_initialize_shnum_00432a7c)" (( "(") (pointer_expression "*(code *)PTR_initialize_shnum_00432a7c" (* "*") (cast_expression "(code *)PTR_initialize_shnum_00432a7c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_initialize_shnum_00432a7c"))) () ")")) (argument_list "(param_1 + 0x90)" (( "(") (binary_expression "param_1 + 0x90" (identifier "param_1") (+ "+") (number_literal "0x90")) () ")"))) (; ";")) (expression_statement "uVar2 = local_40 + *(int *)(param_1 + 0xa8);" (assignment_expression "uVar2 = local_40 + *(int *)(param_1 + 0xa8)" (identifier "uVar2") (= "=") (binary_expression "local_40 + *(int *)(param_1 + 0xa8)" (identifier "local_40") (+ "+") (pointer_expression "*(int *)(param_1 + 0xa8)" (* "*") (cast_expression "(int *)(param_1 + 0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xa8)" (( "(") (binary_expression "param_1 + 0xa8" (identifier "param_1") (+ "+") (number_literal "0xa8")) () ")")))))) (; ";")) (} "}"))) (expression_statement "local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);" (assignment_expression "local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0)" (identifier "local_30") (= "=") (call_expression "(**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x38))" (( "(") (pointer_expression "**(code **)(*(int *)param_1 + 0x38)" (* "*") (pointer_expression "*(code **)(*(int *)param_1 + 0x38)" (* "*") (cast_expression "(code **)(*(int *)param_1 + 0x38)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)param_1 + 0x38)" (( "(") (binary_expression "*(int *)param_1 + 0x38" (pointer_expression "*(int *)param_1" (* "*") (cast_expression "(int *)param_1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (+ "+") (number_literal "0x38")) () ")"))))) () ")")) (argument_list "(param_1,uVar2,&local_48,0)" (( "(") (identifier "param_1") (, ",") (identifier "uVar2") (, ",") (pointer_expression "&local_48" (& "&") (identifier "local_48")) (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (local_44 >> 4 != 0) {\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }" (if "if") (parenthesized_expression "(local_44 >> 4 != 0)" (( "(") (binary_expression "local_44 >> 4 != 0" (binary_expression "local_44 >> 4" (identifier "local_44") (>> ">>") (number_literal "4")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;\n      iVar8 = 0;\n      puVar9 = puVar1 + (local_44 >> 4) * 4;\n      local_38 = (uint)(in_a2 < 0);\n      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;\n      do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);\n    }" ({ "{") (expression_statement "local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;" (assignment_expression "local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30" (identifier "local_34") (= "=") (cast_expression "(code *)PTR_sym_xindex_to_shndx_00432c30" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sym_xindex_to_shndx_00432c30"))) (; ";")) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" (identifier "iVar8") (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9 = puVar1 + (local_44 >> 4) * 4;" (assignment_expression "puVar9 = puVar1 + (local_44 >> 4) * 4" (identifier "puVar9") (= "=") (binary_expression "puVar1 + (local_44 >> 4) * 4" (identifier "puVar1") (+ "+") (binary_expression "(local_44 >> 4) * 4" (parenthesized_expression "(local_44 >> 4)" (( "(") (binary_expression "local_44 >> 4" (identifier "local_44") (>> ">>") (number_literal "4")) () ")")) (* "*") (number_literal "4")))) (; ";")) (expression_statement "local_38 = (uint)(in_a2 < 0);" (assignment_expression "local_38 = (uint)(in_a2 < 0)" (identifier "local_38") (= "=") (call_expression "(uint)(in_a2 < 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(in_a2 < 0)" (( "(") (binary_expression "in_a2 < 0" (identifier "in_a2") (< "<") (number_literal "0")) () ")")))) (; ";")) (expression_statement "puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;" (assignment_expression "puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28" (identifier "puVar7") (= "=") (binary_expression "PTR_s_alize_xindex_004323b4 + -0xd28" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0xd28"))) (; ";")) (do_statement "do {\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      } while (puVar1 != puVar9);" (do "do") (compound_statement "{\n        while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }\n        pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));\n        if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }\nLAB_0014b100:\n        puVar1 = puVar1 + 4;\n        iVar8 = iVar8 + 1;\n      }" ({ "{") (while_statement "while ((puVar1[3] & 0xf000000) == 0x4000000) {\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }" (while "while") (parenthesized_expression "((puVar1[3] & 0xf000000) == 0x4000000)" (( "(") (binary_expression "(puVar1[3] & 0xf000000) == 0x4000000" (parenthesized_expression "(puVar1[3] & 0xf000000)" (( "(") (binary_expression "puVar1[3] & 0xf000000" (subscript_expression "puVar1[3]" (identifier "puVar1") ([ "[") (number_literal "3") (] "]")) (& "&") (number_literal "0xf000000")) () ")")) (== "==") (number_literal "0x4000000")) () ")")) (compound_statement "{\n          uVar2 = *puVar1;\n          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n          if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }\n          puVar1 = puVar1 + 4;\n          (*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);\n          iVar8 = iVar8 + 1;\n          if (puVar1 == puVar9) {\n            return 0;\n          }\n        }" ({ "{") (expression_statement "uVar2 = *puVar1;" (assignment_expression "uVar2 = *puVar1" (identifier "uVar2") (= "=") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (; ";")) (expression_statement "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (identifier "uVar2") (= "=") (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" (( "(") (binary_expression "uVar2 >> 0x10" (identifier "uVar2") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" (( "(") (binary_expression "uVar2 >> 0x18" (identifier "uVar2") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" (( "(") (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" (( "(") (binary_expression "uVar2 & 0xff" (identifier "uVar2") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" (identifier "uVar2") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (if_statement "if (uVar2 < local_48) {\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }" (if "if") (parenthesized_expression "(uVar2 < local_48)" (( "(") (binary_expression "uVar2 < local_48" (identifier "uVar2") (< "<") (identifier "local_48")) () ")")) (compound_statement "{\n            local_40 = local_30 + uVar2;\n            local_3c = *(undefined4 *)(param_2._0_4_ + 4);\n            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);\n            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);\n            goto LAB_0014b100;\n          }" ({ "{") (expression_statement "local_40 = local_30 + uVar2;" (assignment_expression "local_40 = local_30 + uVar2" (identifier "local_40") (= "=") (binary_expression "local_30 + uVar2" (identifier "local_30") (+ "+") (identifier "uVar2"))) (; ";")) (expression_statement "local_3c = *(undefined4 *)(param_2._0_4_ + 4);" (assignment_expression "local_3c = *(undefined4 *)(param_2._0_4_ + 4)" (identifier "local_3c") (= "=") (pointer_expression "*(undefined4 *)(param_2._0_4_ + 4)" (* "*") (cast_expression "(undefined4 *)(param_2._0_4_ + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2._0_4_ + 4)" (( "(") (binary_expression "param_2._0_4_ + 4" (field_expression "param_2._0_4_" (identifier "param_2") (. ".") (field_identifier "_0_4_")) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);" (assignment_expression "uVar3 = (*(code *)PTR_strlen_0043677c)(local_40)" (identifier "uVar3") (= "=") (call_expression "(*(code *)PTR_strlen_0043677c)(local_40)" (parenthesized_expression "(*(code *)PTR_strlen_0043677c)" (( "(") (pointer_expression "*(code *)PTR_strlen_0043677c" (* "*") (cast_expression "(code *)PTR_strlen_0043677c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strlen_0043677c"))) () ")")) (argument_list "(local_40)" (( "(") (identifier "local_40") () ")")))) (; ";")) (expression_statement "(*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);" (call_expression "(*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3)" (parenthesized_expression "(*(code *)PTR__M_replace_00432a3c)" (( "(") (pointer_expression "*(code *)PTR__M_replace_00432a3c" (* "*") (cast_expression "(code *)PTR__M_replace_00432a3c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR__M_replace_00432a3c"))) () ")")) (argument_list "(param_2._0_4_,0,local_3c,local_40,uVar3)" (( "(") (field_expression "param_2._0_4_" (identifier "param_2") (. ".") (field_identifier "_0_4_")) (, ",") (number_literal "0") (, ",") (identifier "local_3c") (, ",") (identifier "local_40") (, ",") (identifier "uVar3") () ")"))) (; ";")) (goto_statement "goto LAB_0014b100;" (goto "goto") (statement_identifier "LAB_0014b100") (; ";")) (} "}"))) (expression_statement "puVar1 = puVar1 + 4;" (assignment_expression "puVar1 = puVar1 + 4" (identifier "puVar1") (= "=") (binary_expression "puVar1 + 4" (identifier "puVar1") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "(*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);" (call_expression "(*(code *)PTR__M_replace_00432a3c)\n                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9)" (parenthesized_expression "(*(code *)PTR__M_replace_00432a3c)" (( "(") (pointer_expression "*(code *)PTR__M_replace_00432a3c" (* "*") (cast_expression "(code *)PTR__M_replace_00432a3c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR__M_replace_00432a3c"))) () ")")) (argument_list "(param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9)" (( "(") (field_expression "param_2._0_4_" (identifier "param_2") (. ".") (field_identifier "_0_4_")) (, ",") (number_literal "0") (, ",") (pointer_expression "*(undefined4 *)(param_2._0_4_ + 4)" (* "*") (cast_expression "(undefined4 *)(param_2._0_4_ + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2._0_4_ + 4)" (( "(") (binary_expression "param_2._0_4_ + 4" (field_expression "param_2._0_4_" (identifier "param_2") (. ".") (field_identifier "_0_4_")) (+ "+") (number_literal "4")) () ")")))) (, ",") (identifier "puVar7") (, ",") (number_literal "9") () ")"))) (; ";")) (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + 1" (identifier "iVar8") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (puVar1 == puVar9) {\n            return 0;\n          }" (if "if") (parenthesized_expression "(puVar1 == puVar9)" (( "(") (binary_expression "puVar1 == puVar9" (identifier "puVar1") (== "==") (identifier "puVar9")) () ")")) (compound_statement "{\n            return 0;\n          }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (} "}"))) (expression_statement "pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));" (assignment_expression "pSVar4 = (Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8))" (identifier "pSVar4") (= "=") (cast_expression "(Symbol_location_info *)\n                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8))" (( "(") (type_descriptor "Symbol_location_info *" (type_identifier "Symbol_location_info") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8))" (( "(") (binary_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |\n                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8)" (binary_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)((int)puVar1 + 0xe) & 0xff)" (( "(") (binary_expression "*(ushort *)((int)puVar1 + 0xe) & 0xff" (pointer_expression "*(ushort *)((int)puVar1 + 0xe)" (* "*") (cast_expression "(ushort *)((int)puVar1 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar1 + 0xe)" (( "(") (binary_expression "(int)puVar1 + 0xe" (cast_expression "(int)puVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar1")) (+ "+") (number_literal "0xe")) () ")")))) (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (call_expression "(uint)(*(ushort *)((int)puVar1 + 0xe) >> 8)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*(ushort *)((int)puVar1 + 0xe) >> 8)" (( "(") (binary_expression "*(ushort *)((int)puVar1 + 0xe) >> 8" (pointer_expression "*(ushort *)((int)puVar1 + 0xe)" (* "*") (cast_expression "(ushort *)((int)puVar1 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar1 + 0xe)" (( "(") (binary_expression "(int)puVar1 + 0xe" (cast_expression "(int)puVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar1")) (+ "+") (number_literal "0xe")) () ")")))) (>> ">>") (number_literal "8")) () ")")))) () ")")))) (; ";")) (if_statement "if (pSVar4 < (Symbol_location_info *)0xff00) {\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n        else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" (if "if") (parenthesized_expression "(pSVar4 < (Symbol_location_info *)0xff00)" (( "(") (binary_expression "pSVar4 < (Symbol_location_info *)0xff00" (identifier "pSVar4") (< "<") (cast_expression "(Symbol_location_info *)0xff00" (( "(") (type_descriptor "Symbol_location_info *" (type_identifier "Symbol_location_info") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xff00"))) () ")")) (compound_statement "{\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }\n        }" ({ "{") (if_statement "if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }" (if "if") (parenthesized_expression "(param_3 == pSVar4)" (( "(") (binary_expression "param_3 == pSVar4" (identifier "param_3") (== "==") (identifier "pSVar4")) () ")")) (compound_statement "{\n            uVar2 = puVar1[1];\nLAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n            if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }\n          }" ({ "{") (expression_statement "uVar2 = puVar1[1];" (assignment_expression "uVar2 = puVar1[1]" (identifier "uVar2") (= "=") (subscript_expression "puVar1[1]" (identifier "puVar1") ([ "[") (number_literal "1") (] "]"))) (; ";")) (labeled_statement "LAB_0014b13c:\n            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (statement_identifier "LAB_0014b13c") (: ":") (expression_statement "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (identifier "uVar2") (= "=") (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" (( "(") (binary_expression "uVar2 >> 0x10" (identifier "uVar2") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" (( "(") (binary_expression "uVar2 >> 0x18" (identifier "uVar2") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" (( "(") (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" (( "(") (binary_expression "uVar2 & 0xff" (identifier "uVar2") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" (identifier "uVar2") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";"))) (if_statement "if (local_38 == 0) {\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }" (if "if") (parenthesized_expression "(local_38 == 0)" (( "(") (binary_expression "local_38 == 0" (identifier "local_38") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }\n            }" ({ "{") (if_statement "if (in_a2 == 0) {\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }\n              else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }" (if "if") (parenthesized_expression "(in_a2 == 0)" (( "(") (binary_expression "in_a2 == 0" (identifier "in_a2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }\n              }" ({ "{") (if_statement "if (uVar2 <= local_2c) {\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }" (if "if") (parenthesized_expression "(uVar2 <= local_2c)" (( "(") (binary_expression "uVar2 <= local_2c" (identifier "uVar2") (<= "<=") (identifier "local_2c")) () ")")) (compound_statement "{\n                  uVar5 = puVar1[2];\n                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  goto LAB_0014b16c;\n                }" ({ "{") (expression_statement "uVar5 = puVar1[2];" (assignment_expression "uVar5 = puVar1[2]" (identifier "uVar5") (= "=") (subscript_expression "puVar1[2]" (identifier "puVar1") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (identifier "iVar6") (= "=") (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" (( "(") (binary_expression "uVar5 >> 0x10" (identifier "uVar5") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" (( "(") (binary_expression "uVar5 >> 0x18" (identifier "uVar5") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" (( "(") (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" (( "(") (binary_expression "uVar5 & 0xff" (identifier "uVar5") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" (identifier "uVar5") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (goto_statement "goto LAB_0014b16c;" (goto "goto") (statement_identifier "LAB_0014b16c") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }" (else "else") (compound_statement "{\n                uVar5 = puVar1[2];\n                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }\n              }" ({ "{") (expression_statement "uVar5 = puVar1[2];" (assignment_expression "uVar5 = puVar1[2]" (identifier "uVar5") (= "=") (subscript_expression "puVar1[2]" (identifier "puVar1") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (identifier "iVar6") (= "=") (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" (( "(") (binary_expression "uVar5 >> 0x10" (identifier "uVar5") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" (( "(") (binary_expression "uVar5 >> 0x18" (identifier "uVar5") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" (( "(") (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" (( "(") (binary_expression "uVar5 & 0xff" (identifier "uVar5") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" (identifier "uVar5") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (if_statement "if (in_a2 == 0) {\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }" (if "if") (parenthesized_expression "(in_a2 == 0)" (( "(") (binary_expression "in_a2 == 0" (identifier "in_a2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }\n                }" ({ "{") (labeled_statement "LAB_0014b16c:\n                  if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }" (statement_identifier "LAB_0014b16c") (: ":") (if_statement "if (local_2c < uVar2 + iVar6) {\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }" (if "if") (parenthesized_expression "(local_2c < uVar2 + iVar6)" (( "(") (binary_expression "local_2c < uVar2 + iVar6" (identifier "local_2c") (< "<") (binary_expression "uVar2 + iVar6" (identifier "uVar2") (+ "+") (identifier "iVar6"))) () ")")) (compound_statement "{\n                    uVar2 = *puVar1;\n                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;\n                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;\n                    iVar8 = param_2._0_4_ + 0x18;\n                    if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }\n                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);\n                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }\n                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);\n                    if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }\n                    return 1;\n                  }" ({ "{") (expression_statement "uVar2 = *puVar1;" (assignment_expression "uVar2 = *puVar1" (identifier "uVar2") (= "=") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (; ";")) (expression_statement "*(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;" (assignment_expression "*(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf" (pointer_expression "*(uint *)(param_2._0_4_ + 0x30)" (* "*") (cast_expression "(uint *)(param_2._0_4_ + 0x30)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2._0_4_ + 0x30)" (( "(") (binary_expression "param_2._0_4_ + 0x30" (field_expression "param_2._0_4_" (identifier "param_2") (. ".") (field_identifier "_0_4_")) (+ "+") (number_literal "0x30")) () ")")))) (= "=") (binary_expression "*(byte *)(puVar1 + 3) & 0xf" (pointer_expression "*(byte *)(puVar1 + 3)" (* "*") (cast_expression "(byte *)(puVar1 + 3)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar1 + 3)" (( "(") (binary_expression "puVar1 + 3" (identifier "puVar1") (+ "+") (number_literal "3")) () ")")))) (& "&") (number_literal "0xf"))) (; ";")) (expression_statement "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;" (assignment_expression "uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (identifier "uVar2") (= "=") (binary_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +\n                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10" (binary_expression "(uVar2 >> 0x10) << 0x18" (parenthesized_expression "(uVar2 >> 0x10)" (( "(") (binary_expression "uVar2 >> 0x10" (identifier "uVar2") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar2 >> 0x18) << 0x10" (parenthesized_expression "(uVar2 >> 0x18)" (( "(") (binary_expression "uVar2 >> 0x18" (identifier "uVar2") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff)" (( "(") (binary_expression "(uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff" (binary_expression "(uVar2 & 0xff) << 8" (parenthesized_expression "(uVar2 & 0xff)" (( "(") (binary_expression "uVar2 & 0xff" (identifier "uVar2") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar2 >> 8 & 0xff" (binary_expression "uVar2 >> 8" (identifier "uVar2") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "iVar8 = param_2._0_4_ + 0x18;" (assignment_expression "iVar8 = param_2._0_4_ + 0x18" (identifier "iVar8") (= "=") (binary_expression "param_2._0_4_ + 0x18" (field_expression "param_2._0_4_" (identifier "param_2") (. ".") (field_identifier "_0_4_")) (+ "+") (number_literal "0x18"))) (; ";")) (if_statement "if (local_48 < uVar2) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }" (if "if") (parenthesized_expression "(local_48 < uVar2)" (( "(") (binary_expression "local_48 < uVar2" (identifier "local_48") (< "<") (identifier "uVar2")) () ")")) (compound_statement "{\n                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);\n                      return 1;\n                    }" ({ "{") (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" (( "(") (pointer_expression "*(code *)PTR_assign_00432ac8" (* "*") (cast_expression "(code *)PTR_assign_00432ac8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_assign_00432ac8"))) () ")")) (argument_list "(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28)" (( "(") (identifier "iVar8") (, ",") (binary_expression "PTR_s_alize_xindex_004323b4 + -0xd28" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0xd28")) () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" (( "(") (pointer_expression "*(code *)PTR_assign_00432ac8" (* "*") (cast_expression "(code *)PTR_assign_00432ac8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_assign_00432ac8"))) () ")")) (argument_list "(iVar8,local_30 + uVar2)" (( "(") (identifier "iVar8") (, ",") (binary_expression "local_30 + uVar2" (identifier "local_30") (+ "+") (identifier "uVar2")) () ")"))) (; ";")) (if_statement "if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }" (if "if") (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0)" (( "(") (binary_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0" (pointer_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8)" (* "*") (cast_expression "(int *)(*(int *)PTR_parameters_00432be0 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)PTR_parameters_00432be0 + 8)" (( "(") (binary_expression "*(int *)PTR_parameters_00432be0 + 8" (pointer_expression "*(int *)PTR_parameters_00432be0" (* "*") (cast_expression "(int *)PTR_parameters_00432be0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_00432be0"))) (+ "+") (number_literal "8")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);\n                      return uVar2;\n                    }" ({ "{") (expression_statement "uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c);" (assignment_expression "uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c)" (identifier "uVar2") (= "=") (call_expression "(*(code *)PTR_do_gold_unreachable_004323c4)\n                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c)" (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 + -0x5cec,0x5c,\n                                         PTR_s_alize_xindex_004323b4 + 0x46c)" (( "(") (binary_expression "PTR_s_alize_xindex_004323b4 + -0x5cec" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "-0x5cec")) (, ",") (number_literal "0x5c") (, ",") (binary_expression "PTR_s_alize_xindex_004323b4 + 0x46c" (identifier "PTR_s_alize_xindex_004323b4") (+ "+") (number_literal "0x46c")) () ")")))) (; ";")) (return_statement "return uVar2;" (return "return") (identifier "uVar2") (; ";")) (} "}"))) (expression_statement "uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);" (assignment_expression "uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" (identifier "uVar2") (= "=") (binary_expression "(uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949)" (( "(") (binary_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949" (pointer_expression "*(int *)(*(int *)PTR_parameters_00432be0 + 8)" (* "*") (cast_expression "(int *)(*(int *)PTR_parameters_00432be0 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)PTR_parameters_00432be0 + 8)" (( "(") (binary_expression "*(int *)PTR_parameters_00432be0 + 8" (pointer_expression "*(int *)PTR_parameters_00432be0" (* "*") (cast_expression "(int *)PTR_parameters_00432be0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_00432be0"))) (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "0x5949")) () ")"))))) (; ";")) (if_statement "if ((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }" (if "if") (parenthesized_expression "((uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0))" (( "(") (binary_expression "(uVar2 != 0) &&\n                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)" (parenthesized_expression "(uVar2 != 0)" (( "(") (binary_expression "uVar2 != 0" (identifier "uVar2") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)" (( "(") (comma_expression "iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0" (assignment_expression "iVar6 = (*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3)" (identifier "iVar6") (= "=") (call_expression "(*(code *)PTR_cplus_demangle_004335b0)\n                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3)" (parenthesized_expression "(*(code *)PTR_cplus_demangle_004335b0)" (( "(") (pointer_expression "*(code *)PTR_cplus_demangle_004335b0" (* "*") (cast_expression "(code *)PTR_cplus_demangle_004335b0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_cplus_demangle_004335b0"))) () ")")) (argument_list "(*(undefined4 *)(param_2._0_4_ + 0x18),3)" (( "(") (pointer_expression "*(undefined4 *)(param_2._0_4_ + 0x18)" (* "*") (cast_expression "(undefined4 *)(param_2._0_4_ + 0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2._0_4_ + 0x18)" (( "(") (binary_expression "param_2._0_4_ + 0x18" (field_expression "param_2._0_4_" (identifier "param_2") (. ".") (field_identifier "_0_4_")) (+ "+") (number_literal "0x18")) () ")")))) (, ",") (number_literal "3") () ")")))) (, ",") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);\n                      (*(code *)PTR_free_00436800)(iVar6);\n                      return uVar2;\n                    }" ({ "{") (expression_statement "(*(code *)PTR_assign_00432ac8)(iVar8,iVar6);" (call_expression "(*(code *)PTR_assign_00432ac8)(iVar8,iVar6)" (parenthesized_expression "(*(code *)PTR_assign_00432ac8)" (( "(") (pointer_expression "*(code *)PTR_assign_00432ac8" (* "*") (cast_expression "(code *)PTR_assign_00432ac8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_assign_00432ac8"))) () ")")) (argument_list "(iVar8,iVar6)" (( "(") (identifier "iVar8") (, ",") (identifier "iVar6") () ")"))) (; ";")) (expression_statement "(*(code *)PTR_free_00436800)(iVar6);" (call_expression "(*(code *)PTR_free_00436800)(iVar6)" (parenthesized_expression "(*(code *)PTR_free_00436800)" (( "(") (pointer_expression "*(code *)PTR_free_00436800" (* "*") (cast_expression "(code *)PTR_free_00436800" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_00436800"))) () ")")) (argument_list "(iVar6)" (( "(") (identifier "iVar6") () ")"))) (; ";")) (return_statement "return uVar2;" (return "return") (identifier "uVar2") (; ";")) (} "}"))) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}")))) (} "}"))) (} "}")))) (} "}"))) (} "}"))) (} "}")) (else_clause "else if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" (else "else") (if_statement "if (pSVar4 == (Symbol_location_info *)0xffff) {\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" (if "if") (parenthesized_expression "(pSVar4 == (Symbol_location_info *)0xffff)" (( "(") (binary_expression "pSVar4 == (Symbol_location_info *)0xffff" (identifier "pSVar4") (== "==") (cast_expression "(Symbol_location_info *)0xffff" (( "(") (type_descriptor "Symbol_location_info *" (type_identifier "Symbol_location_info") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffff"))) () ")")) (compound_statement "{\n          iVar6 = *(int *)(param_1 + 0x30);\n          if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }\n          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);\n          if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }\n        }" ({ "{") (expression_statement "iVar6 = *(int *)(param_1 + 0x30);" (assignment_expression "iVar6 = *(int *)(param_1 + 0x30)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(param_1 + 0x30)" (* "*") (cast_expression "(int *)(param_1 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (if_statement "if (iVar6 == 0) {\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);\n            *(int *)(param_1 + 0x30) = iVar6;\n          }" ({ "{") (expression_statement "iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);" (assignment_expression "iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(*(int *)param_1 + 0x6c))(param_1)" (parenthesized_expression "(**(code **)(*(int *)param_1 + 0x6c))" (( "(") (pointer_expression "**(code **)(*(int *)param_1 + 0x6c)" (* "*") (pointer_expression "*(code **)(*(int *)param_1 + 0x6c)" (* "*") (cast_expression "(code **)(*(int *)param_1 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)param_1 + 0x6c)" (( "(") (binary_expression "*(int *)param_1 + 0x6c" (pointer_expression "*(int *)param_1" (* "*") (cast_expression "(int *)param_1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "*(int *)(param_1 + 0x30) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x30) = iVar6" (pointer_expression "*(int *)(param_1 + 0x30)" (* "*") (cast_expression "(int *)(param_1 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")")))) (= "=") (identifier "iVar6")) (; ";")) (} "}"))) (expression_statement "pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);" (assignment_expression "pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8)" (identifier "pSVar4") (= "=") (cast_expression "(Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8)" (( "(") (type_descriptor "Symbol_location_info *" (type_identifier "Symbol_location_info") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*local_34)(iVar6,param_1,iVar8)" (parenthesized_expression "(*local_34)" (( "(") (pointer_expression "*local_34" (* "*") (identifier "local_34")) () ")")) (argument_list "(iVar6,param_1,iVar8)" (( "(") (identifier "iVar6") (, ",") (identifier "param_1") (, ",") (identifier "iVar8") () ")"))))) (; ";")) (if_statement "if (param_3 == pSVar4) {\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }" (if "if") (parenthesized_expression "(param_3 == pSVar4)" (( "(") (binary_expression "param_3 == pSVar4" (identifier "param_3") (== "==") (identifier "pSVar4")) () ")")) (compound_statement "{\n            uVar2 = puVar1[1];\n            goto LAB_0014b13c;\n          }" ({ "{") (expression_statement "uVar2 = puVar1[1];" (assignment_expression "uVar2 = puVar1[1]" (identifier "uVar2") (= "=") (subscript_expression "puVar1[1]" (identifier "puVar1") ([ "[") (number_literal "1") (] "]"))) (; ";")) (goto_statement "goto LAB_0014b13c;" (goto "goto") (statement_identifier "LAB_0014b13c") (; ";")) (} "}"))) (} "}"))))) (labeled_statement "LAB_0014b100:\n        puVar1 = puVar1 + 4;" (statement_identifier "LAB_0014b100") (: ":") (expression_statement "puVar1 = puVar1 + 4;" (assignment_expression "puVar1 = puVar1 + 4" (identifier "puVar1") (= "=") (binary_expression "puVar1 + 4" (identifier "puVar1") (+ "+") (number_literal "4"))) (; ";"))) (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + 1" (identifier "iVar8") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(puVar1 != puVar9)" (( "(") (binary_expression "puVar1 != puVar9" (identifier "puVar1") (!= "!=") (identifier "puVar9")) () ")")) (; ";")) (} "}"))) (} "}"))) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (ERROR "}" (} "}"))

/* WARNING: Type propagation algorithm not settling */
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Enum "STT": Some values do not have unique names */
/* DWARF original prototype: bool get_symbol_location_info(Sized_relobj_file<32,_false> * this, uint
   shndx, off_t offset, Symbol_location_info * info) */

bool __thiscall
gold::var_1<32,_false>::get_symbol_location_info
          (var_1<32,_false> *this,type_2 var_14,off_t offset,type_10 *var_16)

{
  type_2 *var_7;
  type_1 var_4;
  char var_20;
  type_2 var_9;
  type_2 var_18;
  int var_19;
  type_3 *var_31;
  int *var_24;
  type_4 *var_25;
  type_5 *var_29;
  type_2 in_a3;
  type_6 *var_22;
  type_7 *var_21;
  int var_12;
  type_8 *var_2;
  type_2 *var_13;
  type_6 *var_26;
  type_9 LStack_b0;
  type_9 LStack_a0;
  int iStack_90;
  int var_28;
  type_1 var_27;
  var_1<32,_false> *pSStack_7c;
  int iStack_78;
  int iStack_74;
  type_10 *pSStack_70;
  type_6 *pcStack_6c;
  type_5 local_58;
  type_11 var_10;
  type_11 var_6;
  type_2 var_5;
  type_5 local_3c;
  type_2 var_15;
  type_6 *local_34;
  int var_11;
  type_2 var_17;
  
  if (this->symtab_shndx_ != 0) {
    var_17 = in_a3;
    var_7 = (type_2 *)(*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object
                       [0xe])(this,this->symtab_shndx_,&var_6,0);
    var_2 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0x15];
    if (var_2 == (type_8 *)PTR_do_section_link_00434478) {
      var_4 = elfcpp::Elf_file<32,_false,_gold::type_4>::var_3
                        (&this->elf_file_,this->symtab_shndx_);
    }
    else {
      var_4 = (*var_2)(this);
    }
    if (0xfeff < var_4) {
      var_5 = var_4;
      (*(type_6 *)PTR_initialize_shnum_00432a7c)(&this->elf_file_);
      var_4 = var_5 + (this->elf_file_).large_shndx_offset_;
    }
    var_11 = (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object[0xe])
                         (this,var_4,&var_10,0);
    if (var_6 >> 4 != 0) {
      local_34 = (type_6 *)PTR_sym_xindex_to_shndx_00432c30;
      var_12 = 0;
      var_13 = var_7 + (var_6 >> 4) * 4;
      var_15 = (type_2)((int)var_16 < 0);
      var_21 = var_8 + -0xd28;
      do {
        while ((var_7[3] & 0xf000000) == 0x4000000) {
          var_9 = *var_7;
          var_9 = (((var_9 >> 0x10) << 0x18 | (var_9 >> 0x18) << 0x10) >> 0x10) +
                  ((var_9 & 0xff) << 8 | var_9 >> 8 & 0xff) * 0x10000;
          if (var_9 < var_10) {
            var_5 = var_11 + var_9;
            local_3c = *(type_5 *)(offset._0_4_ + 4);
            local_58 = (*(type_6 *)PTR_strlen_0043677c)(var_5);
            (*(type_6 *)PTR__M_replace_00432a3c)(offset._0_4_,0,local_3c,var_5);
            goto LAB_0014b100;
          }
          var_7 = var_7 + 4;
          local_58 = 9;
          (*(type_6 *)PTR__M_replace_00432a3c)
                    (offset._0_4_,0,*(type_5 *)(offset._0_4_ + 4),var_21);
          var_12 = var_12 + 1;
          if (var_7 == var_13) {
            return false;
          }
        }
        var_9 = (*(type_12 *)((int)var_7 + 0xe) & 0xff) << 8 |
                (type_2)(*(type_12 *)((int)var_7 + 0xe) >> 8);
        if (var_9 < 0xff00) {
          if (var_14 == var_9) {
            var_9 = var_7[1];
LAB_0014b13c:
            var_9 = (((var_9 >> 0x10) << 0x18 | (var_9 >> 0x18) << 0x10) >> 0x10) +
                    ((var_9 & 0xff) << 8 | var_9 >> 8 & 0xff) * 0x10000;
            if (var_15 == 0) {
              if (var_16 == (type_10 *)0x0) {
                if (var_9 <= var_17) {
                  var_18 = var_7[2];
                  var_19 = (((var_18 >> 0x10) << 0x18 | (var_18 >> 0x18) << 0x10) >> 0x10) +
                          ((var_18 & 0xff) << 8 | var_18 >> 8 & 0xff) * 0x10000;
                  goto LAB_0014b16c;
                }
              }
              else {
                var_18 = var_7[2];
                var_19 = (((var_18 >> 0x10) << 0x18 | (var_18 >> 0x18) << 0x10) >> 0x10) +
                        ((var_18 & 0xff) << 8 | var_18 >> 8 & 0xff) * 0x10000;
                if (var_16 == (type_10 *)0x0) {
LAB_0014b16c:
                  if (var_17 < var_9 + var_19) {
                    var_9 = *var_7;
                    *(type_2 *)(offset._0_4_ + 0x30) = *(type_13 *)(var_7 + 3) & 0xf;
                    var_9 = (((var_9 >> 0x10) << 0x18 | (var_9 >> 0x18) << 0x10) >> 0x10) +
                            ((var_9 & 0xff) << 8 | var_9 >> 8 & 0xff) * 0x10000;
                    var_12 = offset._0_4_ + 0x18;
                    if (var_10 < var_9) {
                      (*(type_6 *)PTR_assign_00432ac8)(var_12,var_8 + -0xd28);
                      return true;
                    }
                    (*(type_6 *)PTR_assign_00432ac8)(var_12,var_11 + var_9);
                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) != 0) {
                      var_20 = *(char *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);
                      if ((var_20 != '\0') &&
                         (var_19 = (*(type_6 *)PTR_cplus_demangle_004335b0)
                                            (*(type_5 *)(offset._0_4_ + 0x18),3), var_19 != 0)) {
                        (*(type_6 *)PTR_assign_00432ac8)(var_12,var_19);
                        (*(type_6 *)PTR_free_00436800)(var_19);
                        return (bool)var_20;
                      }
                      return true;
                    }
                    var_19 = 0x5c;
                    var_26 = get_symbol_name;
                    var_24 = (int *)(var_8 + -0x5cec);
                    var_21 = PTR_do_gold_unreachable_004323c4;
                    (*(type_6 *)PTR_do_gold_unreachable_004323c4)
                              (var_24,0x5c,var_8 + 0x46c);
                    if (var_24[0x2d] == 0) {
                      return false;
                    }
                    iStack_74 = offset._0_4_;
                    var_22 = *(type_6 **)(var_21 + 0x2e90a0);
                    pSStack_7c = this;
                    iStack_78 = var_12;
                    pSStack_70 = var_16;
                    pcStack_6c = var_26;
                    if (*(type_6 **)(*var_24 + 0x38) == var_22) {
                      elfcpp::Elf_file<32,_false,_gold::type_4>::var_23
                                (&LStack_a0,(Elf_file<32,_false,_gold::type_4> *)(var_24 + 0x24),
                                 var_24[0x2d]);
                      if (LStack_a0.data_size._0_4_ == 0) {
                        var_28 = LStack_a0.data_size._4_4_;
                        if (LStack_a0.data_size._4_4_ == 0) {
                          var_12 = *(int *)(var_21 + 0x2e909c);
                          goto LAB_0014b43c;
                        }
                        var_25 = (type_4 *)var_24[7];
                        if (var_25 == (type_4 *)0x0) goto LAB_0014b65c;
                        var_12 = (**(type_6 **)(var_21 + 0x2e70dc))(&var_25->offset_);
                        var_26 = *(type_6 **)(*var_24 + 0x54);
                        var_9 = var_24[0x2d];
                        if (var_26 != *(type_6 **)(var_21 + 0x2e90b8)) goto LAB_0014b584;
                        goto LAB_0014b450;
                      }
                    }
                    else {
                      var_12 = (**(type_6 **)(*var_24 + 0x38))();
LAB_0014b43c:
                      var_26 = *(type_6 **)(*var_24 + 0x54);
                      var_9 = var_24[0x2d];
                      if (var_26 == *(type_6 **)(var_21 + 0x2e90b8)) {
LAB_0014b450:
                        var_9 = elfcpp::Elf_file<32,_false,_gold::type_4>::var_3
                                          ((Elf_file<32,_false,_gold::type_4> *)(var_24 + 0x24),
                                           var_9);
                        if (var_9 < 0xff00) goto LAB_0014b46c;
LAB_0014b59c:
                        var_27 = var_9;
                        (**(type_6 **)(var_21 + 0x2e76bc))(var_24 + 0x24);
                        var_9 = var_27 + var_24[0x2a];
                        var_26 = *(type_6 **)(*var_24 + 0x38);
                      }
                      else {
LAB_0014b584:
                        var_9 = (*var_26)(var_24);
                        if (0xfeff < var_9) goto LAB_0014b59c;
LAB_0014b46c:
                        var_26 = *(type_6 **)(*var_24 + 0x38);
                      }
                      if (var_26 != var_22) {
                        var_20 = (*var_26)(var_24,var_9,&iStack_90,0);
                        var_29 = (type_5 *)(var_12 + var_19 * 0x10);
                        if ((type_5 *)(var_12 + var_28) <= var_29) {
                          return false;
                        }
LAB_0014b500:
                        return (bool)(var_20 + (char)((type_2)*var_29 >> 0x18));
                      }
                      elfcpp::Elf_file<32,_false,_gold::type_4>::var_23
                                (&LStack_b0,(Elf_file<32,_false,_gold::type_4> *)(var_24 + 0x24),
                                 var_9);
                      if (LStack_b0.data_size._0_4_ == 0) {
                        iStack_90 = LStack_b0.data_size._4_4_;
                        if (LStack_b0.data_size._4_4_ == 0) {
                          var_20 = (char)*(type_5 *)(var_21 + 0x2e909c);
                        }
                        else {
                          var_25 = (type_4 *)var_24[7];
                          if (var_25 == (type_4 *)0x0) goto LAB_0014b65c;
                          var_20 = (**(type_6 **)(var_21 + 0x2e70dc))(&var_25->offset_);
                        }
                        var_29 = (type_5 *)(var_12 + var_19 * 0x10);
                        if ((type_5 *)(var_12 + var_28) <= var_29) {
                          return false;
                        }
                        goto LAB_0014b500;
                      }
                    }
                    var_25 = (type_4 *)(*(int *)(var_21 + 0x2e6ff4) + -0x5a40);
                    (**(type_6 **)(var_21 + 0x2e7004))
                              (var_25,0xc0,*(int *)(var_21 + 0x2e6ff4) + 0x24);
LAB_0014b65c:
                    /* WARNING: Subroutine does not return */
                    Object::var_30(var_25);
                  }
                }
              }
            }
          }
        }
        else if (var_9 == 0xffff) {
          var_31 = (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;
          if (var_31 == (type_3 *)0x0) {
            var_31 = (type_3 *)
                     (*(this->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object
                       [0x1b])(this);
            (this->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = var_31;
          }
          var_9 = (*local_34)(var_31,this,var_12);
          if (var_14 == var_9) {
            var_9 = var_7[1];
            goto LAB_0014b13c;
          }
        }
LAB_0014b100:
        var_7 = var_7 + 4;
        var_12 = var_12 + 1;
        if (var_7 == var_13) {
          return false;
        }
      } while( true );
    }
  }
  return false;
}


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

/* gold::Sized_relobj_file<32, false>::MASKED(unsigned int, long long,
   gold::Symbol_location_info*) */

uint gold::Sized_relobj_file<32,false>::MASKED
               (uint param_1,longlong param_2,Symbol_location_info *param_3)

{
  uint *puVar1;
  uint uVar2;
  undefined4 uVar3;
  Symbol_location_info *pSVar4;
  uint uVar5;
  int iVar6;
  int in_a2;
  uint in_a3;
  undefined *puVar7;
  int iVar8;
  uint *puVar9;
  uint local_48;
  uint local_44;
  uint local_40;
  undefined4 local_3c;
  uint local_38;
  code *local_34;
  int local_30;
  uint local_2c;
  
  if (*(int *)(param_1 + 0xb4) != 0) {
    local_2c = in_a3;
    puVar1 = (uint *)(**(code **)(*(int *)param_1 + 0x38))
                               (param_1,*(int *)(param_1 + 0xb4),&local_44,0);
    if (*(code **)(*(int *)param_1 + 0x54) == (code *)PTR_do_section_link_00434478) {
      uVar2 = elfcpp::Elf_file<32,false,gold::Object>::section_link
                        ((Elf_file<32,false,gold::Object> *)(param_1 + 0x90),
                         *(uint *)(param_1 + 0xb4));
    }
    else {
      uVar2 = (**(code **)(*(int *)param_1 + 0x54))(param_1);
    }
    if (0xfeff < uVar2) {
      local_40 = uVar2;
      (*(code *)PTR_initialize_shnum_00432a7c)(param_1 + 0x90);
      uVar2 = local_40 + *(int *)(param_1 + 0xa8);
    }
    local_30 = (**(code **)(*(int *)param_1 + 0x38))(param_1,uVar2,&local_48,0);
    if (local_44 >> 4 != 0) {
      local_34 = (code *)PTR_sym_xindex_to_shndx_00432c30;
      iVar8 = 0;
      puVar9 = puVar1 + (local_44 >> 4) * 4;
      local_38 = (uint)(in_a2 < 0);
      puVar7 = PTR_s_alize_xindex_004323b4 + -0xd28;
      do {
        while ((puVar1[3] & 0xf000000) == 0x4000000) {
          uVar2 = *puVar1;
          uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +
                  ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;
          if (uVar2 < local_48) {
            local_40 = local_30 + uVar2;
            local_3c = *(undefined4 *)(param_2._0_4_ + 4);
            uVar3 = (*(code *)PTR_strlen_0043677c)(local_40);
            (*(code *)PTR__M_replace_00432a3c)(param_2._0_4_,0,local_3c,local_40,uVar3);
            goto LAB_0014b100;
          }
          puVar1 = puVar1 + 4;
          (*(code *)PTR__M_replace_00432a3c)
                    (param_2._0_4_,0,*(undefined4 *)(param_2._0_4_ + 4),puVar7,9);
          iVar8 = iVar8 + 1;
          if (puVar1 == puVar9) {
            return 0;
          }
        }
        pSVar4 = (Symbol_location_info *)
                 ((*(ushort *)((int)puVar1 + 0xe) & 0xff) << 8 |
                 (uint)(*(ushort *)((int)puVar1 + 0xe) >> 8));
        if (pSVar4 < (Symbol_location_info *)0xff00) {
          if (param_3 == pSVar4) {
            uVar2 = puVar1[1];
LAB_0014b13c:
            uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +
                    ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;
            if (local_38 == 0) {
              if (in_a2 == 0) {
                if (uVar2 <= local_2c) {
                  uVar5 = puVar1[2];
                  iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;
                  goto LAB_0014b16c;
                }
              }
              else {
                uVar5 = puVar1[2];
                iVar6 = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                        ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;
                if (in_a2 == 0) {
LAB_0014b16c:
                  if (local_2c < uVar2 + iVar6) {
                    uVar2 = *puVar1;
                    *(uint *)(param_2._0_4_ + 0x30) = *(byte *)(puVar1 + 3) & 0xf;
                    uVar2 = (((uVar2 >> 0x10) << 0x18 | (uVar2 >> 0x18) << 0x10) >> 0x10) +
                            ((uVar2 & 0xff) << 8 | uVar2 >> 8 & 0xff) * 0x10000;
                    iVar8 = param_2._0_4_ + 0x18;
                    if (local_48 < uVar2) {
                      (*(code *)PTR_assign_00432ac8)(iVar8,PTR_s_alize_xindex_004323b4 + -0xd28);
                      return 1;
                    }
                    (*(code *)PTR_assign_00432ac8)(iVar8,local_30 + uVar2);
                    if (*(int *)(*(int *)PTR_parameters_00432be0 + 8) == 0) {
                      uVar2 = (*(code *)PTR_do_gold_unreachable_004323c4)
                                        (PTR_s_alize_xindex_004323b4 + -0x5cec,0x5c,
                                         PTR_s_alize_xindex_004323b4 + 0x46c);
                      return uVar2;
                    }
                    uVar2 = (uint)*(byte *)(*(int *)(*(int *)PTR_parameters_00432be0 + 8) + 0x5949);
                    if ((uVar2 != 0) &&
                       (iVar6 = (*(code *)PTR_cplus_demangle_004335b0)
                                          (*(undefined4 *)(param_2._0_4_ + 0x18),3), iVar6 != 0)) {
                      (*(code *)PTR_assign_00432ac8)(iVar8,iVar6);
                      (*(code *)PTR_free_00436800)(iVar6);
                      return uVar2;
                    }
                    return 1;
                  }
                }
              }
            }
          }
        }
        else if (pSVar4 == (Symbol_location_info *)0xffff) {
          iVar6 = *(int *)(param_1 + 0x30);
          if (iVar6 == 0) {
            iVar6 = (**(code **)(*(int *)param_1 + 0x6c))(param_1);
            *(int *)(param_1 + 0x30) = iVar6;
          }
          pSVar4 = (Symbol_location_info *)(*local_34)(iVar6,param_1,iVar8);
          if (param_3 == pSVar4) {
            uVar2 = puVar1[1];
            goto LAB_0014b13c;
          }
        }
LAB_0014b100:
        puVar1 = puVar1 + 4;
        iVar8 = iVar8 + 1;
      } while (puVar1 != puVar9);
    }
  }
  return 0;
}

