
/* WARNING: Enum "DT": Some values do not have unique names */
/* DWARF original prototype: void emit_relocs_scan(Target_aarch64<64,_false> * this, Symbol_table *
   symtab, Layout * layout, Sized_relobj_file<64,_false> * object, uint data_shndx, uint sh_type,
   uchar * prelocs, size_t reloc_count, Output_section * output_section, bool
   needs_special_offset_handling, size_t local_symbol_count, uchar * plocal_syms, Relocatable_relocs
   * rr) */

void __thiscall
anon_unknown.dwarf_12235f4::Target_aarch64<64,_false>::emit_relocs_scan
          (Target_aarch64<64,_false> *this,Symbol_table *symtab,Layout *layout,
          Sized_relobj_file<64,_false> *object,uint data_shndx,uint sh_type,uchar *prelocs,
          size_t reloc_count,Output_section *output_section,bool needs_special_offset_handling,
          size_t param_10,uchar *plocal_syms,Relocatable_relocs *rr)

{
  ushort uVar1;
  uint uVar2;
  _func_int_varargs *p_Var3;
  pointer ppOVar4;
  pointer pSVar5;
  bool bVar6;
  uint uVar7;
  int iVar8;
  ulong uVar9;
  undefined4 extraout_var;
  Xindex *this_00;
  size_t sVar11;
  ulong uVar12;
  uchar local_39 [9];
  Output_section *pOVar10;
  undefined4 extraout_var_00;
  
  if (sh_type != 4) {
                    /* WARNING: Subroutine does not return */
    gold::do_gold_unreachable("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");
  }
  if (reloc_count != 0) {
    sVar11 = 0;
    do {
      while ((needs_special_offset_handling &&
             (bVar6 = gold::Output_section::is_input_address_mapped
                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),
             !bVar6))) {
LAB_002fa218:
        local_39[0] = '\b';
        sVar11 = sVar11 + 1;
        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>
                  (&rr->reloc_strategies_,local_39);
        prelocs = (uchar *)((long)prelocs + 0x18);
        if (reloc_count == sVar11) {
          return;
        }
      }
      uVar2 = *(uint *)((long)prelocs + 0xc);
      uVar12 = (ulong)uVar2;
      if (uVar12 < param_10) {
        if (plocal_syms == (uchar *)0x0) {
                    /* WARNING: Subroutine does not return */
          gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");
        }
        uVar1 = *(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6);
        uVar9 = (ulong)uVar1;
        if (uVar1 < 0xff00) {
LAB_002fa2ce:
          if ((int)uVar9 != 0) {
            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                      ._M_impl._M_start;
            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {
                    /* WARNING: Subroutine does not return */
              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");
            }
            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;
          }
        }
        else if (uVar1 == 0xffff) {
          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;
          if (this_00 == (Xindex *)0x0) {
            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object
                      [0x1b])(object);
            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);
            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;
          }
          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);
          uVar9 = (ulong)uVar7;
          goto LAB_002fa2ce;
        }
        if ((plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf) == 3) {
          p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object
                   [0x18];
          if (p_Var3 == gold::Relobj::do_output_section) {
            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                      ._M_impl._M_start;
            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {
                    /* WARNING: Subroutine does not return */
              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");
            }
            pOVar10 = ppOVar4[uVar9];
          }
          else {
            iVar8 = (*p_Var3)(object,uVar9);
            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);
          }
          pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;
          local_39[0] = '\x01';
          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>
                    (&rr->reloc_strategies_,local_39);
        }
        else {
          pSVar5 = (object->local_values_).
                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>
                   ._M_impl._M_start;
          if ((ulong)(((long)(object->local_values_).
                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>
                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=
              uVar12) {
                    /* WARNING: Subroutine does not return */
            gold::do_gold_unreachable
                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");
          }
          pSVar5 = pSVar5 + uVar12;
          uVar2 = pSVar5->output_symtab_index_;
          if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {
                    /* WARNING: Subroutine does not return */
            gold::do_gold_unreachable
                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");
          }
          pSVar5->output_symtab_index_ = 0xfffffffe;
          local_39[0] = '\0';
          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>
                    (&rr->reloc_strategies_,local_39);
        }
      }
      else {
        local_39[0] = '\0';
        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>
                  (&rr->reloc_strategies_,local_39);
      }
      rr->output_reloc_count_ = rr->output_reloc_count_ + 1;
      sVar11 = sVar11 + 1;
      prelocs = (uchar *)((long)prelocs + 0x18);
    } while (reloc_count != sVar11);
  }
  return;
}



void FUN_002fa0d0(void)

{
  int *piVar1;
  ushort uVar2;
  int iVar3;
  char cVar4;
  uint uVar5;
  long lVar6;
  long *in_RCX;
  long lVar7;
  undefined4 in_R8D;
  int in_R9D;
  long lVar8;
  ulong uVar9;
  undefined8 *in_stack_00000008;
  long in_stack_00000010;
  undefined8 in_stack_00000018;
  char in_stack_00000020;
  ulong in_stack_00000028;
  long in_stack_00000030;
  long in_stack_00000038;
  undefined1 local_39 [9];
  
  if (in_R9D != 4) {
                    /* WARNING: Subroutine does not return */
    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");
  }
  if (in_stack_00000010 != 0) {
    lVar8 = 0;
    do {
      while ((in_stack_00000020 != '\0' &&
             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),
             cVar4 == '\0'))) {
LAB_002fa218:
        local_39[0] = 8;
        lVar8 = lVar8 + 1;
        FUN_001a5c60(in_stack_00000038,local_39);
        in_stack_00000008 = in_stack_00000008 + 3;
        if (in_stack_00000010 == lVar8) {
          return;
        }
      }
      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);
      if (uVar9 < in_stack_00000028) {
        if (in_stack_00000030 == 0) {
                    /* WARNING: Subroutine does not return */
          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");
        }
        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;
        uVar2 = *(ushort *)(lVar7 + 6);
        uVar5 = (uint)uVar2;
        if (uVar2 < 0xff00) {
LAB_002fa2ce:
          if (uVar5 != 0) {
            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");
            }
            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;
          }
        }
        else if (uVar2 == 0xffff) {
          lVar6 = in_RCX[8];
          if (lVar6 == 0) {
            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);
            in_RCX[8] = lVar6;
          }
          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);
          goto LAB_002fa2ce;
        }
        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {
          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {
            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");
            }
            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);
          }
          else {
            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);
          }
          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;
          local_39[0] = 1;
          FUN_001a5c60(in_stack_00000038,local_39);
        }
        else {
          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");
          }
          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);
          iVar3 = *piVar1;
          if ((iVar3 != 0) && (iVar3 != -2)) {
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");
          }
          *piVar1 = -2;
          local_39[0] = 0;
          FUN_001a5c60(in_stack_00000038,local_39);
        }
      }
      else {
        local_39[0] = 0;
        FUN_001a5c60(in_stack_00000038,local_39);
      }
      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;
      lVar8 = lVar8 + 1;
      in_stack_00000008 = in_stack_00000008 + 3;
    } while (in_stack_00000010 != lVar8);
  }
  return;
}


PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x28
MOVZX EAX,byte ptr [RSP + 0x78]
MOV dword ptr [RSP],R8D
MOV RBX,qword ptr [RSP + 0x90]
MOV byte ptr [RSP + 0x7],AL
CMP R9D,0x4
JNZ 0x002fa3a7
CMP qword ptr [RSP + 0x68],0x0
JZ 0x002fa237
MOV R14,RCX
XOR R13D,R13D
LEA RBP,[RSP + 0x1f]
MOV R12,qword ptr [RSP + 0x60]
JMP 0x002fa1cb
CMP qword ptr [RSP + 0x88],0x0
JZ 0x002fa32f
LEA ECX,[R15 + R15*0x2]
SHL ECX,0x3
ADD RCX,qword ptr [RSP + 0x88]
MOVZX EAX,word ptr [RCX + 0x6]
CMP EAX,0xfeff
JBE 0x002fa2ce
CMP EAX,0xffff
JZ 0x002fa2b0
MOVZX EDX,byte ptr [RCX + 0x4]
AND EDX,0xf
CMP DL,0x3
JNZ 0x002fa250
MOV RDX,qword ptr [R14]
LEA RSI,[0x1a5070]
MOV RDX,qword ptr [RDX + 0xc0]
CMP RDX,RSI
JNZ 0x002fa300
MOV RCX,qword ptr [R14 + 0x50]
MOV RDX,qword ptr [R14 + 0x58]
MOV EAX,EAX
SUB RDX,RCX
SAR RDX,0x3
CMP RAX,RDX
JNC 0x002fa377
MOV RAX,qword ptr [RCX + RAX*0x8]
OR byte ptr [RAX + 0xc8],0x1
MOV RSI,RBP
MOV RDI,RBX
MOV byte ptr [RSP + 0x1f],0x1
CALL 0x001a5c60
ADD qword ptr [RBX + 0x18],0x1
ADD R13,0x1
ADD R12,0x18
CMP qword ptr [RSP + 0x68],R13
JZ 0x002fa237
CMP byte ptr [RSP + 0x7],0x0
JNZ 0x002fa200
MOV R15D,dword ptr [R12 + 0xc]
CMP qword ptr [RSP + 0x80],R15
JA 0x002fa120
MOV RSI,RBP
MOV RDI,RBX
MOV byte ptr [RSP + 0x1f],0x0
CALL 0x001a5c60
JMP 0x002fa1b7
MOV RCX,qword ptr [R12]
MOV EDX,dword ptr [RSP]
MOV RSI,R14
MOV RDI,qword ptr [RSP + 0x70]
CALL 0x003cfe70
TEST AL,AL
JNZ 0x002fa1d2
MOV RSI,RBP
MOV RDI,RBX
MOV byte ptr [RSP + 0x1f],0x8
ADD R13,0x1
CALL 0x001a5c60
ADD R12,0x18
CMP qword ptr [RSP + 0x68],R13
JNZ 0x002fa1cb
ADD RSP,0x28
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
MOV RDX,qword ptr [R14 + 0x160]
MOV RAX,qword ptr [R14 + 0x168]
MOV RSI,-0x5555555555555555
SUB RAX,RDX
SAR RAX,0x3
IMUL RAX,RSI
CMP R15,RAX
JNC 0x002fa35f
LEA RAX,[R15 + R15*0x2]
LEA RAX,[RDX + RAX*0x8]
MOV EDX,dword ptr [RAX]
TEST EDX,EDX
JZ 0x002fa293
CMP EDX,-0x2
JNZ 0x002fa347
MOV dword ptr [RAX],0xfffffffe
MOV RSI,RBP
MOV RDI,RBX
MOV byte ptr [RSP + 0x1f],0x0
CALL 0x001a5c60
JMP 0x002fa1b7
MOV RDI,qword ptr [R14 + 0x40]
TEST RDI,RDI
JZ 0x002fa310
MOV EDX,R15D
MOV RSI,R14
MOV qword ptr [RSP + 0x8],RCX
CALL 0x00392c60
MOV RCX,qword ptr [RSP + 0x8]
TEST EAX,EAX
JZ 0x002fa158
MOV RSI,qword ptr [R14 + 0x50]
MOV RDX,qword ptr [R14 + 0x58]
MOV EDI,EAX
SUB RDX,RSI
SAR RDX,0x3
CMP RDI,RDX
JNC 0x002fa38f
CMP qword ptr [RSI + RDI*0x8],0x0
JZ 0x002fa218
JMP 0x002fa158
MOV ESI,EAX
MOV RDI,R14
CALL RDX
JMP 0x002fa1a0
MOV RAX,qword ptr [R14]
MOV qword ptr [RSP + 0x8],RCX
MOV RDI,R14
CALL qword ptr [RAX + 0xd8]
MOV RCX,qword ptr [RSP + 0x8]
MOV RDI,RAX
MOV qword ptr [R14 + 0x40],RAX
JMP 0x002fa2b9
LEA RDX,[0x5663f0]
MOV ESI,0x2e4
LEA RDI,[0x5334ee]
CALL 0x00352af0
LEA RDX,[0x566360]
MOV ESI,0x71f
LEA RDI,[0x5333ac]
CALL 0x00352af0
LEA RDX,[0x5663a0]
MOV ESI,0x8e3
LEA RDI,[0x5333ac]
CALL 0x00352af0
LEA RDX,[0x566460]
MOV ESI,0x5c8
LEA RDI,[0x5333ac]
CALL 0x00352af0
LEA RDX,[0x5663d0]
MOV ESI,0x50b
LEA RDI,[0x5333ac]
CALL 0x00352af0
LEA RDX,[0x566410]
MOV ESI,0x202f
LEA RDI,[0x5628cf]
CALL 0x00352af0
(translation_unit "void FUN_002fa0d0(void)\n\n{\n  int *piVar1;\n  ushort uVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  long lVar6;\n  long *in_RCX;\n  long lVar7;\n  undefined4 in_R8D;\n  int in_R9D;\n  long lVar8;\n  ulong uVar9;\n  undefined8 *in_stack_00000008;\n  long in_stack_00000010;\n  undefined8 in_stack_00000018;\n  char in_stack_00000020;\n  ulong in_stack_00000028;\n  long in_stack_00000030;\n  long in_stack_00000038;\n  undefined1 local_39 [9];\n  \n  if (in_R9D != 4) {\n                    /* WARNING: Subroutine does not return */\n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }\n  if (in_stack_00000010 != 0) {\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }\n  return;\n}\n\n" (function_definition "void FUN_002fa0d0(void)\n\n{\n  int *piVar1;\n  ushort uVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  long lVar6;\n  long *in_RCX;\n  long lVar7;\n  undefined4 in_R8D;\n  int in_R9D;\n  long lVar8;\n  ulong uVar9;\n  undefined8 *in_stack_00000008;\n  long in_stack_00000010;\n  undefined8 in_stack_00000018;\n  char in_stack_00000020;\n  ulong in_stack_00000028;\n  long in_stack_00000030;\n  long in_stack_00000038;\n  undefined1 local_39 [9];\n  \n  if (in_R9D != 4) {\n                    /* WARNING: Subroutine does not return */\n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }\n  if (in_stack_00000010 != 0) {\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }\n  return;\n}" primitive_type (function_declarator "FUN_002fa0d0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  int *piVar1;\n  ushort uVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  long lVar6;\n  long *in_RCX;\n  long lVar7;\n  undefined4 in_R8D;\n  int in_R9D;\n  long lVar8;\n  ulong uVar9;\n  undefined8 *in_stack_00000008;\n  long in_stack_00000010;\n  undefined8 in_stack_00000018;\n  char in_stack_00000020;\n  ulong in_stack_00000028;\n  long in_stack_00000030;\n  long in_stack_00000038;\n  undefined1 local_39 [9];\n  \n  if (in_R9D != 4) {\n                    /* WARNING: Subroutine does not return */\n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }\n  if (in_stack_00000010 != 0) {\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }\n  return;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "ushort uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "char cVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "long lVar6;" (sized_type_specifier "long" long) identifier ;) (declaration "long *in_RCX;" (sized_type_specifier "long" long) (pointer_declarator "*in_RCX" * identifier) ;) (declaration "long lVar7;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined4 in_R8D;" type_identifier identifier ;) (declaration "int in_R9D;" primitive_type identifier ;) (declaration "long lVar8;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar9;" type_identifier identifier ;) (declaration "undefined8 *in_stack_00000008;" type_identifier (pointer_declarator "*in_stack_00000008" * identifier) ;) (declaration "long in_stack_00000010;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 in_stack_00000018;" type_identifier identifier ;) (declaration "char in_stack_00000020;" primitive_type identifier ;) (declaration "ulong in_stack_00000028;" type_identifier identifier ;) (declaration "long in_stack_00000030;" (sized_type_specifier "long" long) identifier ;) (declaration "long in_stack_00000038;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined1 local_39 [9];" type_identifier (array_declarator "local_39 [9]" identifier [ number_literal ]) ;) (if_statement "if (in_R9D != 4) {\n                    /* WARNING: Subroutine does not return */\n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }" if (parenthesized_expression "(in_R9D != 4)" ( (binary_expression "in_R9D != 4" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }" { comment (expression_statement "FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");" (call_expression "FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan")" identifier (argument_list "("../../gold/aarch64.cc",0x202f,"emit_relocs_scan")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""emit_relocs_scan"" " string_content ") ))) ;) })) (if_statement "if (in_stack_00000010 != 0) {\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }" if (parenthesized_expression "(in_stack_00000010 != 0)" ( (binary_expression "in_stack_00000010 != 0" identifier != number_literal) )) (compound_statement "{\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }" { (expression_statement "lVar8 = 0;" (assignment_expression "lVar8 = 0" identifier = number_literal) ;) (do_statement "do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);" do (compound_statement "{\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    }" { (while_statement "while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }" while (parenthesized_expression "((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0')))" ( (parenthesized_expression "(in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))" ( (binary_expression "in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0')" (binary_expression "in_stack_00000020 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "(cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0')" ( (comma_expression "cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'" (assignment_expression "cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008)" identifier = (call_expression "FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008)" identifier (argument_list "(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008)" ( identifier , identifier , identifier , (pointer_expression "*in_stack_00000008" * identifier) )))) , (binary_expression "cVar4 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence '))) ))) )) )) (compound_statement "{\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }" { (labeled_statement "LAB_002fa218:\n        local_39[0] = 8;" statement_identifier : (expression_statement "local_39[0] = 8;" (assignment_expression "local_39[0] = 8" (subscript_expression "local_39[0]" identifier [ number_literal ]) = number_literal) ;)) (expression_statement "lVar8 = lVar8 + 1;" (assignment_expression "lVar8 = lVar8 + 1" identifier = (binary_expression "lVar8 + 1" identifier + number_literal)) ;) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" identifier (argument_list "(in_stack_00000038,local_39)" ( identifier , identifier ))) ;) (expression_statement "in_stack_00000008 = in_stack_00000008 + 3;" (assignment_expression "in_stack_00000008 = in_stack_00000008 + 3" identifier = (binary_expression "in_stack_00000008 + 3" identifier + number_literal)) ;) (if_statement "if (in_stack_00000010 == lVar8) {\n          return;\n        }" if (parenthesized_expression "(in_stack_00000010 == lVar8)" ( (binary_expression "in_stack_00000010 == lVar8" identifier == identifier) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) })) (expression_statement "uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);" (assignment_expression "uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc)" identifier = (binary_expression "(ulong)*(uint *)((long)in_stack_00000008 + 0xc)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)((long)in_stack_00000008 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)in_stack_00000008 + 0xc)" ( (binary_expression "(long)in_stack_00000008 + 0xc" (cast_expression "(long)in_stack_00000008" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (if_statement "if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }" if (parenthesized_expression "(uVar9 < in_stack_00000028)" ( (binary_expression "uVar9 < in_stack_00000028" identifier < identifier) )) (compound_statement "{\n        if (in_stack_00000030 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }" { (if_statement "if (in_stack_00000030 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }" if (parenthesized_expression "(in_stack_00000030 == 0)" ( (binary_expression "in_stack_00000030 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }" { comment (expression_statement "FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");" (call_expression "FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs")" identifier (argument_list "("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs")" ( (string_literal ""../../gold/target-reloc.h"" " string_content ") , number_literal , (string_literal ""scan_relocatable_relocs"" " string_content ") ))) ;) })) (expression_statement "lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;" (assignment_expression "lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030" identifier = (binary_expression "(ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030" (call_expression "(ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18)" ( (binary_expression "*(uint *)((long)in_stack_00000008 + 0xc) * 0x18" (pointer_expression "*(uint *)((long)in_stack_00000008 + 0xc)" * (cast_expression "(uint *)((long)in_stack_00000008 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)in_stack_00000008 + 0xc)" ( (binary_expression "(long)in_stack_00000008 + 0xc" (cast_expression "(long)in_stack_00000008" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) * number_literal) ))) + identifier)) ;) (expression_statement "uVar2 = *(ushort *)(lVar7 + 6);" (assignment_expression "uVar2 = *(ushort *)(lVar7 + 6)" identifier = (pointer_expression "*(ushort *)(lVar7 + 6)" * (cast_expression "(ushort *)(lVar7 + 6)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar7 + 6)" ( (binary_expression "lVar7 + 6" identifier + number_literal) ))))) ;) (expression_statement "uVar5 = (uint)uVar2;" (assignment_expression "uVar5 = (uint)uVar2" identifier = (cast_expression "(uint)uVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" if (parenthesized_expression "(uVar2 < 0xff00)" ( (binary_expression "uVar2 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }" { (labeled_statement "LAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }" statement_identifier : (if_statement "if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }" if (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) (compound_statement "{\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }" { (if_statement "if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }" if (parenthesized_expression "((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5)" ( (binary_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5" (call_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(in_RCX[0xb] - in_RCX[10] >> 3)" ( (binary_expression "in_RCX[0xb] - in_RCX[10] >> 3" (binary_expression "in_RCX[0xb] - in_RCX[10]" (subscript_expression "in_RCX[0xb]" identifier [ number_literal ]) - (subscript_expression "in_RCX[10]" identifier [ number_literal ])) >> number_literal) ))) <= (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }" { comment (expression_statement "FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");" (call_expression "FUN_00352af0("../../gold/object.h",0x50b,"is_section_included")" identifier (argument_list "("../../gold/object.h",0x50b,"is_section_included")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""is_section_included"" " string_content ") ))) ;) })) (if_statement "if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;" if (parenthesized_expression "(*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0)" ( (binary_expression "*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0" (pointer_expression "*(long *)(in_RCX[10] + (ulong)uVar5 * 8)" * (cast_expression "(long *)(in_RCX[10] + (ulong)uVar5 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_RCX[10] + (ulong)uVar5 * 8)" ( (binary_expression "in_RCX[10] + (ulong)uVar5 * 8" (subscript_expression "in_RCX[10]" identifier [ number_literal ]) + (binary_expression "(ulong)uVar5 * 8" (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_002fa218;" goto statement_identifier ;)) }))) }) (else_clause "else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" else (if_statement "if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" if (parenthesized_expression "(uVar2 == 0xffff)" ( (binary_expression "uVar2 == 0xffff" identifier == number_literal) )) (compound_statement "{\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" { (expression_statement "lVar6 = in_RCX[8];" (assignment_expression "lVar6 = in_RCX[8]" identifier = (subscript_expression "in_RCX[8]" identifier [ number_literal ])) ;) (if_statement "if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }" if (parenthesized_expression "(lVar6 == 0)" ( (binary_expression "lVar6 == 0" identifier == number_literal) )) (compound_statement "{\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }" { (expression_statement "lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);" (assignment_expression "lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX)" identifier = (call_expression "(**(code **)(*in_RCX + 0xd8))(in_RCX)" (parenthesized_expression "(**(code **)(*in_RCX + 0xd8))" ( (pointer_expression "**(code **)(*in_RCX + 0xd8)" * (pointer_expression "*(code **)(*in_RCX + 0xd8)" * (cast_expression "(code **)(*in_RCX + 0xd8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*in_RCX + 0xd8)" ( (binary_expression "*in_RCX + 0xd8" (pointer_expression "*in_RCX" * identifier) + number_literal) ))))) )) (argument_list "(in_RCX)" ( identifier )))) ;) (expression_statement "in_RCX[8] = lVar6;" (assignment_expression "in_RCX[8] = lVar6" (subscript_expression "in_RCX[8]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);" (assignment_expression "uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9)" identifier = (call_expression "FUN_00392c60(lVar6,in_RCX,uVar9)" identifier (argument_list "(lVar6,in_RCX,uVar9)" ( identifier , identifier , identifier )))) ;) (goto_statement "goto LAB_002fa2ce;" goto statement_identifier ;) })))) (if_statement "if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" if (parenthesized_expression "((*(byte *)(lVar7 + 4) & 0xf) == 3)" ( (binary_expression "(*(byte *)(lVar7 + 4) & 0xf) == 3" (parenthesized_expression "(*(byte *)(lVar7 + 4) & 0xf)" ( (binary_expression "*(byte *)(lVar7 + 4) & 0xf" (pointer_expression "*(byte *)(lVar7 + 4)" * (cast_expression "(byte *)(lVar7 + 4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar7 + 4)" ( (binary_expression "lVar7 + 4" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" { (if_statement "if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }" if (parenthesized_expression "(*(code **)(*in_RCX + 0xc0) == FUN_001a5070)" ( (binary_expression "*(code **)(*in_RCX + 0xc0) == FUN_001a5070" (pointer_expression "*(code **)(*in_RCX + 0xc0)" * (cast_expression "(code **)(*in_RCX + 0xc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*in_RCX + 0xc0)" ( (binary_expression "*in_RCX + 0xc0" (pointer_expression "*in_RCX" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }" { (if_statement "if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }" if (parenthesized_expression "((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5)" ( (binary_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5" (call_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(in_RCX[0xb] - in_RCX[10] >> 3)" ( (binary_expression "in_RCX[0xb] - in_RCX[10] >> 3" (binary_expression "in_RCX[0xb] - in_RCX[10]" (subscript_expression "in_RCX[0xb]" identifier [ number_literal ]) - (subscript_expression "in_RCX[10]" identifier [ number_literal ])) >> number_literal) ))) <= (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }" { comment (expression_statement "FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");" (call_expression "FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section")" identifier (argument_list "("../../gold/object.h",0x5c8,"do_output_section")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""do_output_section"" " string_content ") ))) ;) })) (expression_statement "lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);" (assignment_expression "lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8)" identifier = (pointer_expression "*(long *)(in_RCX[10] + (ulong)uVar5 * 8)" * (cast_expression "(long *)(in_RCX[10] + (ulong)uVar5 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_RCX[10] + (ulong)uVar5 * 8)" ( (binary_expression "in_RCX[10] + (ulong)uVar5 * 8" (subscript_expression "in_RCX[10]" identifier [ number_literal ]) + (binary_expression "(ulong)uVar5 * 8" (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) ))))) ;) }) (else_clause "else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }" else (compound_statement "{\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }" { (expression_statement "lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);" (assignment_expression "lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5)" identifier = (call_expression "(**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5)" (parenthesized_expression "(**(code **)(*in_RCX + 0xc0))" ( (pointer_expression "**(code **)(*in_RCX + 0xc0)" * (pointer_expression "*(code **)(*in_RCX + 0xc0)" * (cast_expression "(code **)(*in_RCX + 0xc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*in_RCX + 0xc0)" ( (binary_expression "*in_RCX + 0xc0" (pointer_expression "*in_RCX" * identifier) + number_literal) ))))) )) (argument_list "(in_RCX,uVar5)" ( identifier , identifier )))) ;) }))) (expression_statement "*(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;" (assignment_expression "*(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1" (pointer_expression "*(byte *)(lVar7 + 200)" * (cast_expression "(byte *)(lVar7 + 200)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar7 + 200)" ( (binary_expression "lVar7 + 200" identifier + number_literal) )))) = (binary_expression "*(byte *)(lVar7 + 200) | 1" (pointer_expression "*(byte *)(lVar7 + 200)" * (cast_expression "(byte *)(lVar7 + 200)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar7 + 200)" ( (binary_expression "lVar7 + 200" identifier + number_literal) )))) | number_literal)) ;) (expression_statement "local_39[0] = 1;" (assignment_expression "local_39[0] = 1" (subscript_expression "local_39[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" identifier (argument_list "(in_stack_00000038,local_39)" ( identifier , identifier ))) ;) }) (else_clause "else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" else (compound_statement "{\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" { (if_statement "if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }" if (parenthesized_expression "((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9)" ( (binary_expression "(ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9" (call_expression "(ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555)" ( (binary_expression "(in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555" (parenthesized_expression "(in_RCX[0x2d] - in_RCX[0x2c] >> 3)" ( (binary_expression "in_RCX[0x2d] - in_RCX[0x2c] >> 3" (binary_expression "in_RCX[0x2d] - in_RCX[0x2c]" (subscript_expression "in_RCX[0x2d]" identifier [ number_literal ]) - (subscript_expression "in_RCX[0x2c]" identifier [ number_literal ])) >> number_literal) )) * number_literal) ))) <= identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }" { comment (expression_statement "FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");" (call_expression "FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry")" identifier (argument_list "("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""set_must_have_output_symtab_entry"" " string_content ") ))) ;) })) (expression_statement "piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);" (assignment_expression "piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18)" identifier = (cast_expression "(int *)(in_RCX[0x2c] + uVar9 * 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_RCX[0x2c] + uVar9 * 0x18)" ( (binary_expression "in_RCX[0x2c] + uVar9 * 0x18" (subscript_expression "in_RCX[0x2c]" identifier [ number_literal ]) + (binary_expression "uVar9 * 0x18" identifier * number_literal)) )))) ;) (expression_statement "iVar3 = *piVar1;" (assignment_expression "iVar3 = *piVar1" identifier = (pointer_expression "*piVar1" * identifier)) ;) (if_statement "if ((iVar3 != 0) && (iVar3 != -2)) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }" if (parenthesized_expression "((iVar3 != 0) && (iVar3 != -2))" ( (binary_expression "(iVar3 != 0) && (iVar3 != -2)" (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar3 != -2)" ( (binary_expression "iVar3 != -2" identifier != number_literal) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }" { comment (expression_statement "FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");" (call_expression "FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry")" identifier (argument_list "("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""set_must_have_output_symtab_entry"" " string_content ") ))) ;) })) (expression_statement "*piVar1 = -2;" (assignment_expression "*piVar1 = -2" (pointer_expression "*piVar1" * identifier) = number_literal) ;) (expression_statement "local_39[0] = 0;" (assignment_expression "local_39[0] = 0" (subscript_expression "local_39[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" identifier (argument_list "(in_stack_00000038,local_39)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }" else (compound_statement "{\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }" { (expression_statement "local_39[0] = 0;" (assignment_expression "local_39[0] = 0" (subscript_expression "local_39[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" identifier (argument_list "(in_stack_00000038,local_39)" ( identifier , identifier ))) ;) }))) (expression_statement "*(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;" (assignment_expression "*(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1" (pointer_expression "*(long *)(in_stack_00000038 + 0x18)" * (cast_expression "(long *)(in_stack_00000038 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_stack_00000038 + 0x18)" ( (binary_expression "in_stack_00000038 + 0x18" identifier + number_literal) )))) = (binary_expression "*(long *)(in_stack_00000038 + 0x18) + 1" (pointer_expression "*(long *)(in_stack_00000038 + 0x18)" * (cast_expression "(long *)(in_stack_00000038 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_stack_00000038 + 0x18)" ( (binary_expression "in_stack_00000038 + 0x18" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "lVar8 = lVar8 + 1;" (assignment_expression "lVar8 = lVar8 + 1" identifier = (binary_expression "lVar8 + 1" identifier + number_literal)) ;) (expression_statement "in_stack_00000008 = in_stack_00000008 + 3;" (assignment_expression "in_stack_00000008 = in_stack_00000008 + 3" identifier = (binary_expression "in_stack_00000008 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(in_stack_00000010 != lVar8)" ( (binary_expression "in_stack_00000010 != lVar8" identifier != identifier) )) ;) })) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Enum "DT": Some values do not have unique names */\n/* DWARF original prototype: void emit_relocs_scan(Target_aarch64<64,_false> * this, Symbol_table *\n   symtab, Layout * layout, Sized_relobj_file<64,_false> * object, uint data_shndx, uint sh_type,\n   uchar * prelocs, size_t reloc_count, Output_section * output_section, bool\n   needs_special_offset_handling, size_t local_symbol_count, uchar * plocal_syms, Relocatable_relocs\n   * rr) */\n\nvoid __thiscall\nanon_unknown.dwarf_12235f4::Target_aarch64<64,_false>::emit_relocs_scan\n          (Target_aarch64<64,_false> *this,Symbol_table *symtab,Layout *layout,\n          Sized_relobj_file<64,_false> *object,uint data_shndx,uint sh_type,uchar *prelocs,\n          size_t reloc_count,Output_section *output_section,bool needs_special_offset_handling,\n          size_t param_10,uchar *plocal_syms,Relocatable_relocs *rr)\n\n{\n  ushort uVar1;\n  uint uVar2;\n  _func_int_varargs *p_Var3;\n  pointer ppOVar4;\n  pointer pSVar5;\n  bool bVar6;\n  uint uVar7;\n  int iVar8;\n  ulong uVar9;\n  undefined4 extraout_var;\n  Xindex *this_00;\n  size_t sVar11;\n  ulong uVar12;\n  uchar local_39 [9];\n  Output_section *pOVar10;\n  undefined4 extraout_var_00;\n  \n  if (sh_type != 4) {\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }\n  if (reloc_count != 0) {\n    sVar11 = 0;\n    do {\n      while ((needs_special_offset_handling &&\n             (bVar6 = gold::Output_section::is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),\n             !bVar6))) {\nLAB_002fa218:\n        local_39[0] = '\b';\n        sVar11 = sVar11 + 1;\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n        prelocs = (uchar *)((long)prelocs + 0x18);\n        if (reloc_count == sVar11) {\n          return;\n        }\n      }\n      uVar2 = *(uint *)((long)prelocs + 0xc);\n      uVar12 = (ulong)uVar2;\n      if (uVar12 < param_10) {\n        if (plocal_syms == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        uVar1 = *(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6);\n        uVar9 = (ulong)uVar1;\n        if (uVar1 < 0xff00) {\nLAB_002fa2ce:\n          if ((int)uVar9 != 0) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar1 == 0xffff) {\n          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;\n          if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }\n          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);\n          uVar9 = (ulong)uVar7;\n          goto LAB_002fa2ce;\n        }\n        if ((plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf) == 3) {\n          p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var3 == gold::Relobj::do_output_section) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pOVar10 = ppOVar4[uVar9];\n          }\n          else {\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }\n          pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;\n          local_39[0] = '\x01';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n        else {\n          pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start;\n          if ((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          pSVar5 = pSVar5 + uVar12;\n          uVar2 = pSVar5->output_symtab_index_;\n          if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          pSVar5->output_symtab_index_ = 0xfffffffe;\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n      }\n      else {\n        local_39[0] = '\0';\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n      }\n      rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n      sVar11 = sVar11 + 1;\n      prelocs = (uchar *)((long)prelocs + 0x18);\n    } while (reloc_count != sVar11);\n  }\n  return;\n}\n\n" comment comment (declaration "void __thiscall\nanon_unknown.dwarf_12235f4::Target_aarch64<64,_false>::emit_relocs_scan\n          (Target_aarch64<64,_false> *this,Symbol_table *symtab,Layout *layout,\n          Sized_relobj_file<64,_false> *object,uint data_shndx,uint sh_type,uchar *prelocs,\n          size_t reloc_count,Output_section *output_section,bool needs_special_offset_handling,\n          size_t param_10,uchar *plocal_syms,Relocatable_relocs *rr)\n\n{\n  ushort uVar1;" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "anon_unknown.dwarf_12235f4::" identifier . identifier : :) identifier (ERROR "<64" < number_literal) , (ERROR "_false>::emit_relocs_scan\n          (Target_aarch64<64,_false> *this,Symbol_table *symtab,Layout *layout,\n          Sized_relobj_file<64,_false> *object,uint data_shndx,uint sh_type,uchar *prelocs,\n          size_t reloc_count,Output_section *output_section,bool needs_special_offset_handling,\n          size_t param_10,uchar *plocal_syms,Relocatable_relocs *rr)\n\n{\n  ushort" identifier > : : (function_declarator "emit_relocs_scan\n          (Target_aarch64<64,_false> *this,Symbol_table *symtab,Layout *layout,\n          Sized_relobj_file<64,_false> *object,uint data_shndx,uint sh_type,uchar *prelocs,\n          size_t reloc_count,Output_section *output_section,bool needs_special_offset_handling,\n          size_t param_10,uchar *plocal_syms,Relocatable_relocs *rr)" identifier (parameter_list "(Target_aarch64<64,_false> *this,Symbol_table *symtab,Layout *layout,\n          Sized_relobj_file<64,_false> *object,uint data_shndx,uint sh_type,uchar *prelocs,\n          size_t reloc_count,Output_section *output_section,bool needs_special_offset_handling,\n          size_t param_10,uchar *plocal_syms,Relocatable_relocs *rr)" ( (parameter_declaration "Target_aarch64" type_identifier) (ERROR "<64" < number_literal) , (parameter_declaration "_false> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) , (parameter_declaration "Symbol_table *symtab" type_identifier (pointer_declarator "*symtab" * identifier)) , (parameter_declaration "Layout *layout" type_identifier (pointer_declarator "*layout" * identifier)) , (parameter_declaration "Sized_relobj_file" type_identifier) (ERROR "<64" < number_literal) , (parameter_declaration "_false> *object" type_identifier (ERROR ">" >) (pointer_declarator "*object" * identifier)) , (parameter_declaration "uint data_shndx" type_identifier identifier) , (parameter_declaration "uint sh_type" type_identifier identifier) , (parameter_declaration "uchar *prelocs" type_identifier (pointer_declarator "*prelocs" * identifier)) , (parameter_declaration "size_t reloc_count" primitive_type identifier) , (parameter_declaration "Output_section *output_section" type_identifier (pointer_declarator "*output_section" * identifier)) , (parameter_declaration "bool needs_special_offset_handling" primitive_type identifier) , (parameter_declaration "size_t param_10" primitive_type identifier) , (parameter_declaration "uchar *plocal_syms" type_identifier (pointer_declarator "*plocal_syms" * identifier)) , (parameter_declaration "Relocatable_relocs *rr" type_identifier (pointer_declarator "*rr" * identifier)) ))) { identifier) identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "_func_int_varargs *p_Var3;" type_identifier (pointer_declarator "*p_Var3" * identifier) ;) (declaration "pointer ppOVar4;" type_identifier identifier ;) (declaration "pointer pSVar5;" type_identifier identifier ;) (declaration "bool bVar6;" primitive_type identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "ulong uVar9;" type_identifier identifier ;) (declaration "undefined4 extraout_var;" type_identifier identifier ;) (declaration "Xindex *this_00;" type_identifier (pointer_declarator "*this_00" * identifier) ;) (declaration "size_t sVar11;" primitive_type identifier ;) (declaration "ulong uVar12;" type_identifier identifier ;) (declaration "uchar local_39 [9];" type_identifier (array_declarator "local_39 [9]" identifier [ number_literal ]) ;) (declaration "Output_section *pOVar10;" type_identifier (pointer_declarator "*pOVar10" * identifier) ;) (declaration "undefined4 extraout_var_00;" type_identifier identifier ;) (if_statement "if (sh_type != 4) {\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }" if (parenthesized_expression "(sh_type != 4)" ( (binary_expression "sh_type != 4" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x202f,"emit_relocs_scan")" identifier (argument_list "("../../gold/aarch64.cc",0x202f,"emit_relocs_scan")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""emit_relocs_scan"" " string_content ") ))) ;)) })) (if_statement "if (reloc_count != 0) {\n    sVar11 = 0;\n    do {\n      while ((needs_special_offset_handling &&\n             (bVar6 = gold::Output_section::is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),\n             !bVar6))) {\nLAB_002fa218:\n        local_39[0] = '\b';\n        sVar11 = sVar11 + 1;\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n        prelocs = (uchar *)((long)prelocs + 0x18);\n        if (reloc_count == sVar11) {\n          return;\n        }\n      }\n      uVar2 = *(uint *)((long)prelocs + 0xc);\n      uVar12 = (ulong)uVar2;\n      if (uVar12 < param_10) {\n        if (plocal_syms == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        uVar1 = *(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6);\n        uVar9 = (ulong)uVar1;\n        if (uVar1 < 0xff00) {\nLAB_002fa2ce:\n          if ((int)uVar9 != 0) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar1 == 0xffff) {\n          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;\n          if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }\n          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);\n          uVar9 = (ulong)uVar7;\n          goto LAB_002fa2ce;\n        }\n        if ((plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf) == 3) {\n          p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var3 == gold::Relobj::do_output_section) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pOVar10 = ppOVar4[uVar9];\n          }\n          else {\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }\n          pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;\n          local_39[0] = '\x01';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n        else {\n          pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start;\n          if ((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          pSVar5 = pSVar5 + uVar12;\n          uVar2 = pSVar5->output_symtab_index_;\n          if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          pSVar5->output_symtab_index_ = 0xfffffffe;\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n      }\n      else {\n        local_39[0] = '\0';\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n      }\n      rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n      sVar11 = sVar11 + 1;\n      prelocs = (uchar *)((long)prelocs + 0x18);\n    } while (reloc_count != sVar11);\n  }" if (parenthesized_expression "(reloc_count != 0)" ( (binary_expression "reloc_count != 0" identifier != number_literal) )) (compound_statement "{\n    sVar11 = 0;\n    do {\n      while ((needs_special_offset_handling &&\n             (bVar6 = gold::Output_section::is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),\n             !bVar6))) {\nLAB_002fa218:\n        local_39[0] = '\b';\n        sVar11 = sVar11 + 1;\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n        prelocs = (uchar *)((long)prelocs + 0x18);\n        if (reloc_count == sVar11) {\n          return;\n        }\n      }\n      uVar2 = *(uint *)((long)prelocs + 0xc);\n      uVar12 = (ulong)uVar2;\n      if (uVar12 < param_10) {\n        if (plocal_syms == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        uVar1 = *(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6);\n        uVar9 = (ulong)uVar1;\n        if (uVar1 < 0xff00) {\nLAB_002fa2ce:\n          if ((int)uVar9 != 0) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar1 == 0xffff) {\n          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;\n          if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }\n          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);\n          uVar9 = (ulong)uVar7;\n          goto LAB_002fa2ce;\n        }\n        if ((plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf) == 3) {\n          p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var3 == gold::Relobj::do_output_section) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pOVar10 = ppOVar4[uVar9];\n          }\n          else {\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }\n          pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;\n          local_39[0] = '\x01';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n        else {\n          pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start;\n          if ((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          pSVar5 = pSVar5 + uVar12;\n          uVar2 = pSVar5->output_symtab_index_;\n          if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          pSVar5->output_symtab_index_ = 0xfffffffe;\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n      }\n      else {\n        local_39[0] = '\0';\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n      }\n      rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n      sVar11 = sVar11 + 1;\n      prelocs = (uchar *)((long)prelocs + 0x18);\n    } while (reloc_count != sVar11);\n  }" { (expression_statement "sVar11 = 0;" (assignment_expression "sVar11 = 0" identifier = number_literal) ;) (do_statement "do {\n      while ((needs_special_offset_handling &&\n             (bVar6 = gold::Output_section::is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),\n             !bVar6))) {\nLAB_002fa218:\n        local_39[0] = '\b';\n        sVar11 = sVar11 + 1;\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n        prelocs = (uchar *)((long)prelocs + 0x18);\n        if (reloc_count == sVar11) {\n          return;\n        }\n      }\n      uVar2 = *(uint *)((long)prelocs + 0xc);\n      uVar12 = (ulong)uVar2;\n      if (uVar12 < param_10) {\n        if (plocal_syms == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        uVar1 = *(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6);\n        uVar9 = (ulong)uVar1;\n        if (uVar1 < 0xff00) {\nLAB_002fa2ce:\n          if ((int)uVar9 != 0) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar1 == 0xffff) {\n          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;\n          if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }\n          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);\n          uVar9 = (ulong)uVar7;\n          goto LAB_002fa2ce;\n        }\n        if ((plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf) == 3) {\n          p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var3 == gold::Relobj::do_output_section) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pOVar10 = ppOVar4[uVar9];\n          }\n          else {\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }\n          pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;\n          local_39[0] = '\x01';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n        else {\n          pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start;\n          if ((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          pSVar5 = pSVar5 + uVar12;\n          uVar2 = pSVar5->output_symtab_index_;\n          if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          pSVar5->output_symtab_index_ = 0xfffffffe;\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n      }\n      else {\n        local_39[0] = '\0';\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n      }\n      rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n      sVar11 = sVar11 + 1;\n      prelocs = (uchar *)((long)prelocs + 0x18);\n    } while (reloc_count != sVar11);" do (compound_statement "{\n      while ((needs_special_offset_handling &&\n             (bVar6 = gold::Output_section::is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),\n             !bVar6))) {\nLAB_002fa218:\n        local_39[0] = '\b';\n        sVar11 = sVar11 + 1;\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n        prelocs = (uchar *)((long)prelocs + 0x18);\n        if (reloc_count == sVar11) {\n          return;\n        }\n      }\n      uVar2 = *(uint *)((long)prelocs + 0xc);\n      uVar12 = (ulong)uVar2;\n      if (uVar12 < param_10) {\n        if (plocal_syms == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        uVar1 = *(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6);\n        uVar9 = (ulong)uVar1;\n        if (uVar1 < 0xff00) {\nLAB_002fa2ce:\n          if ((int)uVar9 != 0) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar1 == 0xffff) {\n          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;\n          if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }\n          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);\n          uVar9 = (ulong)uVar7;\n          goto LAB_002fa2ce;\n        }\n        if ((plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf) == 3) {\n          p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var3 == gold::Relobj::do_output_section) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pOVar10 = ppOVar4[uVar9];\n          }\n          else {\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }\n          pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;\n          local_39[0] = '\x01';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n        else {\n          pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start;\n          if ((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          pSVar5 = pSVar5 + uVar12;\n          uVar2 = pSVar5->output_symtab_index_;\n          if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          pSVar5->output_symtab_index_ = 0xfffffffe;\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n      }\n      else {\n        local_39[0] = '\0';\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n      }\n      rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n      sVar11 = sVar11 + 1;\n      prelocs = (uchar *)((long)prelocs + 0x18);\n    }" { (while_statement "while ((needs_special_offset_handling &&\n             (bVar6 = gold::Output_section::is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),\n             !bVar6))) {\nLAB_002fa218:\n        local_39[0] = '\b';\n        sVar11 = sVar11 + 1;\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n        prelocs = (uchar *)((long)prelocs + 0x18);\n        if (reloc_count == sVar11) {\n          return;\n        }\n      }" while (parenthesized_expression "((needs_special_offset_handling &&\n             (bVar6 = gold::Output_section::is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),\n             !bVar6)))" ( (parenthesized_expression "(needs_special_offset_handling &&\n             (bVar6 = gold::Output_section::is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),\n             !bVar6))" ( (binary_expression "needs_special_offset_handling &&\n             (bVar6 = gold::Output_section::is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),\n             !bVar6)" identifier && (parenthesized_expression "(bVar6 = gold::Output_section::is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),\n             !bVar6)" ( (ERROR "bVar6 = gold::Output_section::" (assignment_expression "bVar6 = gold" identifier = identifier) : : identifier : :) (comma_expression "is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs),\n             !bVar6" (call_expression "is_input_address_mapped\n                                (output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs)" identifier (argument_list "(output_section,(Relobj *)object,data_shndx,*(off_t *)prelocs)" ( identifier , (cast_expression "(Relobj *)object" ( (type_descriptor "Relobj *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (pointer_expression "*(off_t *)prelocs" * (cast_expression "(off_t *)prelocs" ( (type_descriptor "off_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) , (unary_expression "!bVar6" ! identifier)) ))) )) )) (compound_statement "{\nLAB_002fa218:\n        local_39[0] = '\b';\n        sVar11 = sVar11 + 1;\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n        prelocs = (uchar *)((long)prelocs + 0x18);\n        if (reloc_count == sVar11) {\n          return;\n        }\n      }" { (labeled_statement "LAB_002fa218:\n        local_39[0] = '\b';" statement_identifier : (expression_statement "local_39[0] = '\b';" (assignment_expression "local_39[0] = '\b'" (subscript_expression "local_39[0]" identifier [ number_literal ]) = (char_literal "'\b'" ' escape_sequence ')) ;)) (expression_statement "sVar11 = sVar11 + 1;" (assignment_expression "sVar11 = sVar11 + 1" identifier = (binary_expression "sVar11 + 1" identifier + number_literal)) ;) (labeled_statement "std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);" statement_identifier (ERROR "::vector<unsigned_char,_std::allocator<unsigned_char>_>:" : : (comma_expression "vector<unsigned_char,_std" (binary_expression "vector<unsigned_char" identifier < identifier) , identifier) : : (binary_expression "allocator<unsigned_char>_" (binary_expression "allocator<unsigned_char" identifier < identifier) > identifier) > :) : (expression_statement "emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);" (binary_expression "emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39)" (binary_expression "emplace_back<unsigned_char" identifier < identifier) > (parenthesized_expression "(&rr->reloc_strategies_,local_39)" ( (comma_expression "&rr->reloc_strategies_,local_39" (pointer_expression "&rr->reloc_strategies_" & (field_expression "rr->reloc_strategies_" identifier -> field_identifier)) , identifier) ))) ;)) (expression_statement "prelocs = (uchar *)((long)prelocs + 0x18);" (assignment_expression "prelocs = (uchar *)((long)prelocs + 0x18)" identifier = (cast_expression "(uchar *)((long)prelocs + 0x18)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)prelocs + 0x18)" ( (binary_expression "(long)prelocs + 0x18" (cast_expression "(long)prelocs" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) (if_statement "if (reloc_count == sVar11) {\n          return;\n        }" if (parenthesized_expression "(reloc_count == sVar11)" ( (binary_expression "reloc_count == sVar11" identifier == identifier) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) })) (expression_statement "uVar2 = *(uint *)((long)prelocs + 0xc);" (assignment_expression "uVar2 = *(uint *)((long)prelocs + 0xc)" identifier = (pointer_expression "*(uint *)((long)prelocs + 0xc)" * (cast_expression "(uint *)((long)prelocs + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)prelocs + 0xc)" ( (binary_expression "(long)prelocs + 0xc" (cast_expression "(long)prelocs" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "uVar12 = (ulong)uVar2;" (assignment_expression "uVar12 = (ulong)uVar2" identifier = (cast_expression "(ulong)uVar2" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (if_statement "if (uVar12 < param_10) {\n        if (plocal_syms == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        uVar1 = *(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6);\n        uVar9 = (ulong)uVar1;\n        if (uVar1 < 0xff00) {\nLAB_002fa2ce:\n          if ((int)uVar9 != 0) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar1 == 0xffff) {\n          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;\n          if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }\n          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);\n          uVar9 = (ulong)uVar7;\n          goto LAB_002fa2ce;\n        }\n        if ((plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf) == 3) {\n          p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var3 == gold::Relobj::do_output_section) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pOVar10 = ppOVar4[uVar9];\n          }\n          else {\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }\n          pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;\n          local_39[0] = '\x01';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n        else {\n          pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start;\n          if ((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          pSVar5 = pSVar5 + uVar12;\n          uVar2 = pSVar5->output_symtab_index_;\n          if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          pSVar5->output_symtab_index_ = 0xfffffffe;\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n      }\n      else {\n        local_39[0] = '\0';\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n      }" if (parenthesized_expression "(uVar12 < param_10)" ( (binary_expression "uVar12 < param_10" identifier < identifier) )) (compound_statement "{\n        if (plocal_syms == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        uVar1 = *(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6);\n        uVar9 = (ulong)uVar1;\n        if (uVar1 < 0xff00) {\nLAB_002fa2ce:\n          if ((int)uVar9 != 0) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar1 == 0xffff) {\n          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;\n          if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }\n          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);\n          uVar9 = (ulong)uVar7;\n          goto LAB_002fa2ce;\n        }\n        if ((plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf) == 3) {\n          p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var3 == gold::Relobj::do_output_section) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pOVar10 = ppOVar4[uVar9];\n          }\n          else {\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }\n          pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;\n          local_39[0] = '\x01';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n        else {\n          pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start;\n          if ((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          pSVar5 = pSVar5 + uVar12;\n          uVar2 = pSVar5->output_symtab_index_;\n          if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          pSVar5->output_symtab_index_ = 0xfffffffe;\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n      }" { (if_statement "if (plocal_syms == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }" if (parenthesized_expression "(plocal_syms == (uchar *)0x0)" ( (binary_expression "plocal_syms == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");" (call_expression "do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs")" identifier (argument_list "("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs")" ( (string_literal ""../../gold/target-reloc.h"" " string_content ") , number_literal , (string_literal ""scan_relocatable_relocs"" " string_content ") ))) ;)) })) (expression_statement "uVar1 = *(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6);" (assignment_expression "uVar1 = *(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6)" identifier = (pointer_expression "*(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6)" * (cast_expression "(ushort *)(plocal_syms + (ulong)(uVar2 * 0x18) + 6)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plocal_syms + (ulong)(uVar2 * 0x18) + 6)" ( (binary_expression "plocal_syms + (ulong)(uVar2 * 0x18) + 6" (binary_expression "plocal_syms + (ulong)(uVar2 * 0x18)" identifier + (call_expression "(ulong)(uVar2 * 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar2 * 0x18)" ( (binary_expression "uVar2 * 0x18" identifier * number_literal) )))) + number_literal) ))))) ;) (expression_statement "uVar9 = (ulong)uVar1;" (assignment_expression "uVar9 = (ulong)uVar1" identifier = (cast_expression "(ulong)uVar1" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (if_statement "if (uVar1 < 0xff00) {\nLAB_002fa2ce:\n          if ((int)uVar9 != 0) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar1 == 0xffff) {\n          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;\n          if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }\n          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);\n          uVar9 = (ulong)uVar7;\n          goto LAB_002fa2ce;\n        }" if (parenthesized_expression "(uVar1 < 0xff00)" ( (binary_expression "uVar1 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_002fa2ce:\n          if ((int)uVar9 != 0) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }\n        }" { (labeled_statement "LAB_002fa2ce:\n          if ((int)uVar9 != 0) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }" statement_identifier : (if_statement "if ((int)uVar9 != 0) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }" if (parenthesized_expression "((int)uVar9 != 0)" ( (binary_expression "(int)uVar9 != 0" (cast_expression "(int)uVar9" ( (type_descriptor "int" primitive_type) ) identifier) != number_literal) )) (compound_statement "{\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;\n          }" { (expression_statement "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;" (field_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start" (field_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl" (binary_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std" (assignment_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold" identifier = (binary_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<64,_false>)" ( (comma_expression "object->super_Sized_relobj<64,_false" (binary_expression "object->super_Sized_relobj<64" (field_expression "object->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) < identifier)) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }" if (parenthesized_expression "((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9)" ( (binary_expression "(ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9" (call_expression "(ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3)" ( (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3" (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4" (field_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish" (field_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl" (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std" (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold" (cast_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<64,_false>)" ( (comma_expression "object->super_Sized_relobj<64,_false" (binary_expression "object->super_Sized_relobj<64" (field_expression "object->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier)) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) - (cast_expression "(long)ppOVar4" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) >> number_literal) ))) <= identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");" (call_expression "do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included")" identifier (argument_list "("../../gold/object.h",0x50b,"is_section_included")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""is_section_included"" " string_content ") ))) ;)) })) (if_statement "if (ppOVar4[uVar9] == (Output_section *)0x0) goto LAB_002fa218;" if (parenthesized_expression "(ppOVar4[uVar9] == (Output_section *)0x0)" ( (binary_expression "ppOVar4[uVar9] == (Output_section *)0x0" (subscript_expression "ppOVar4[uVar9]" identifier [ identifier ]) == (cast_expression "(Output_section *)0x0" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_002fa218;" goto statement_identifier ;)) }))) }) (else_clause "else if (uVar1 == 0xffff) {\n          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;\n          if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }\n          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);\n          uVar9 = (ulong)uVar7;\n          goto LAB_002fa2ce;\n        }" else (if_statement "if (uVar1 == 0xffff) {\n          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;\n          if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }\n          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);\n          uVar9 = (ulong)uVar7;\n          goto LAB_002fa2ce;\n        }" if (parenthesized_expression "(uVar1 == 0xffff)" ( (binary_expression "uVar1 == 0xffff" identifier == number_literal) )) (compound_statement "{\n          this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;\n          if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }\n          uVar7 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);\n          uVar9 = (ulong)uVar7;\n          goto LAB_002fa2ce;\n        }" { (expression_statement "this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;" (assignment_expression "this_00 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_" identifier = (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<64,_false>)" ( (comma_expression "object->super_Sized_relobj<64,_false" (binary_expression "object->super_Sized_relobj<64" (field_expression "object->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier)) ;) (if_statement "if (this_00 == (Xindex *)0x0) {\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }" if (parenthesized_expression "(this_00 == (Xindex *)0x0)" ( (binary_expression "this_00 == (Xindex *)0x0" identifier == (cast_expression "(Xindex *)0x0" ( (type_descriptor "Xindex *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);\n            this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);\n            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;\n          }" { (expression_statement "iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object);" (assignment_expression "iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object)" identifier = (call_expression "(*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])(object)" (parenthesized_expression "(*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b])" ( (pointer_expression "*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b]" * (subscript_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                      [0x1b]" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<64,_false>)" ( (comma_expression "object->super_Sized_relobj<64,_false" (binary_expression "object->super_Sized_relobj<64" (field_expression "object->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) [ number_literal ])) )) (argument_list "(object)" ( identifier )))) ;) (expression_statement "this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8);" (assignment_expression "this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar8)" identifier = (cast_expression "(Xindex *)CONCAT44(extraout_var_00,iVar8)" ( (type_descriptor "Xindex *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT44(extraout_var_00,iVar8)" identifier (argument_list "(extraout_var_00,iVar8)" ( identifier , identifier ))))) ;) (expression_statement "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00;" (assignment_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = this_00" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<64,_false>)" ( (comma_expression "object->super_Sized_relobj<64,_false" (binary_expression "object->super_Sized_relobj<64" (field_expression "object->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) = identifier) ;) })) (ERROR "uVar7 = gold::" (assignment_expression "uVar7 = gold" identifier = identifier) : :) (labeled_statement "Xindex::sym_xindex_to_shndx(this_00,(Object *)object,uVar2);" statement_identifier : (ERROR ":" :) (expression_statement "sym_xindex_to_shndx(this_00,(Object *)object,uVar2);" (call_expression "sym_xindex_to_shndx(this_00,(Object *)object,uVar2)" identifier (argument_list "(this_00,(Object *)object,uVar2)" ( identifier , (cast_expression "(Object *)object" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))) ;)) (expression_statement "uVar9 = (ulong)uVar7;" (assignment_expression "uVar9 = (ulong)uVar7" identifier = (cast_expression "(ulong)uVar7" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_002fa2ce;" goto statement_identifier ;) })))) (if_statement "if ((plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf) == 3) {\n          p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var3 == gold::Relobj::do_output_section) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pOVar10 = ppOVar4[uVar9];\n          }\n          else {\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }\n          pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;\n          local_39[0] = '\x01';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }\n        else {\n          pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start;\n          if ((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          pSVar5 = pSVar5 + uVar12;\n          uVar2 = pSVar5->output_symtab_index_;\n          if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          pSVar5->output_symtab_index_ = 0xfffffffe;\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }" if (parenthesized_expression "((plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf) == 3)" ( (binary_expression "(plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf) == 3" (parenthesized_expression "(plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf)" ( (binary_expression "plocal_syms[(ulong)(uVar2 * 0x18) + 4] & 0xf" (subscript_expression "plocal_syms[(ulong)(uVar2 * 0x18) + 4]" identifier [ (binary_expression "(ulong)(uVar2 * 0x18) + 4" (call_expression "(ulong)(uVar2 * 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar2 * 0x18)" ( (binary_expression "uVar2 * 0x18" identifier * number_literal) ))) + number_literal) ]) & number_literal) )) == number_literal) )) (compound_statement "{\n          p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var3 == gold::Relobj::do_output_section) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pOVar10 = ppOVar4[uVar9];\n          }\n          else {\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }\n          pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;\n          local_39[0] = '\x01';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }" { (expression_statement "p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];" (assignment_expression "p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18]" identifier = (subscript_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18]" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<64,_false>)" ( (comma_expression "object->super_Sized_relobj<64,_false" (binary_expression "object->super_Sized_relobj<64" (field_expression "object->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) [ number_literal ])) ;) (if_statement "if (p_Var3 == gold::Relobj::do_output_section) {\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pOVar10 = ppOVar4[uVar9];\n          }\n          else {\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }" if (parenthesized_expression "(p_Var3 == gold::Relobj::do_output_section)" ( (ERROR "p_Var3 == gold::Relobj::" (binary_expression "p_Var3 == gold" identifier == identifier) : : identifier : :) identifier )) (compound_statement "{\n            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;\n            if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pOVar10 = ppOVar4[uVar9];\n          }" { (expression_statement "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;" (field_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start" (field_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl" (binary_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std" (assignment_expression "ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold" identifier = (binary_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<64,_false>)" ( (comma_expression "object->super_Sized_relobj<64,_false" (binary_expression "object->super_Sized_relobj<64" (field_expression "object->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) < identifier)) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if ((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }" if (parenthesized_expression "((ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9)" ( (binary_expression "(ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= uVar9" (call_expression "(ulong)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3)" ( (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4 >> 3" (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar4" (field_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish" (field_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl" (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std" (binary_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold" (cast_expression "(long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                              super__Vector_base" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(object->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<64,_false>)" ( (comma_expression "object->super_Sized_relobj<64,_false" (binary_expression "object->super_Sized_relobj<64" (field_expression "object->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier)) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) - (cast_expression "(long)ppOVar4" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) >> number_literal) ))) <= identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");" (call_expression "do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section")" identifier (argument_list "("../../gold/object.h",0x5c8,"do_output_section")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""do_output_section"" " string_content ") ))) ;)) })) (expression_statement "pOVar10 = ppOVar4[uVar9];" (assignment_expression "pOVar10 = ppOVar4[uVar9]" identifier = (subscript_expression "ppOVar4[uVar9]" identifier [ identifier ])) ;) }) (else_clause "else {\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }" else (compound_statement "{\n            iVar8 = (*p_Var3)(object,uVar9);\n            pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);\n          }" { (expression_statement "iVar8 = (*p_Var3)(object,uVar9);" (assignment_expression "iVar8 = (*p_Var3)(object,uVar9)" identifier = (call_expression "(*p_Var3)(object,uVar9)" (parenthesized_expression "(*p_Var3)" ( (pointer_expression "*p_Var3" * identifier) )) (argument_list "(object,uVar9)" ( identifier , identifier )))) ;) (expression_statement "pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8);" (assignment_expression "pOVar10 = (Output_section *)CONCAT44(extraout_var,iVar8)" identifier = (cast_expression "(Output_section *)CONCAT44(extraout_var,iVar8)" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT44(extraout_var,iVar8)" identifier (argument_list "(extraout_var,iVar8)" ( identifier , identifier ))))) ;) }))) (expression_statement "pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;" (assignment_expression "pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1" (field_expression "pOVar10->field_0xc8" identifier -> field_identifier) = (binary_expression "pOVar10->field_0xc8 | 1" (field_expression "pOVar10->field_0xc8" identifier -> field_identifier) | number_literal)) ;) (expression_statement "local_39[0] = '\x01';" (assignment_expression "local_39[0] = '\x01'" (subscript_expression "local_39[0]" identifier [ number_literal ]) = (char_literal "'\x01'" ' escape_sequence ')) ;) (labeled_statement "std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);" statement_identifier (ERROR "::vector<unsigned_char,_std::allocator<unsigned_char>_>:" : : (comma_expression "vector<unsigned_char,_std" (binary_expression "vector<unsigned_char" identifier < identifier) , identifier) : : (binary_expression "allocator<unsigned_char>_" (binary_expression "allocator<unsigned_char" identifier < identifier) > identifier) > :) : (expression_statement "emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);" (binary_expression "emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39)" (binary_expression "emplace_back<unsigned_char" identifier < identifier) > (parenthesized_expression "(&rr->reloc_strategies_,local_39)" ( (comma_expression "&rr->reloc_strategies_,local_39" (pointer_expression "&rr->reloc_strategies_" & (field_expression "rr->reloc_strategies_" identifier -> field_identifier)) , identifier) ))) ;)) }) (else_clause "else {\n          pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start;\n          if ((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          pSVar5 = pSVar5 + uVar12;\n          uVar2 = pSVar5->output_symtab_index_;\n          if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          pSVar5->output_symtab_index_ = 0xfffffffe;\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }" else (compound_statement "{\n          pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start;\n          if ((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          pSVar5 = pSVar5 + uVar12;\n          uVar2 = pSVar5->output_symtab_index_;\n          if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          pSVar5->output_symtab_index_ = 0xfffffffe;\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n        }" { (expression_statement "pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start;" (field_expression "pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl._M_start" (field_expression "pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                   ._M_impl" (binary_expression "pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_" (binary_expression "pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_" (binary_expression "pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64" (binary_expression "pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold" (binary_expression "pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64>,_std" (binary_expression "pSVar5 = (object->local_values_).\n                   super__Vector_base<gold::Symbol_value<64" (assignment_expression "pSVar5 = (object->local_values_).\n                   super__Vector_base<gold" identifier = (binary_expression "(object->local_values_).\n                   super__Vector_base<gold" (field_expression "(object->local_values_).\n                   super__Vector_base" (parenthesized_expression "(object->local_values_)" ( (field_expression "object->local_values_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if ((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }" if (parenthesized_expression "((ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12)" ( (binary_expression "(ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555) <=\n              uVar12" (call_expression "(ulong)(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555)" ( (binary_expression "((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3) * -0x5555555555555555" (parenthesized_expression "((long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3)" ( (binary_expression "(long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5 >> 3" (binary_expression "(long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish - (long)pSVar5" (field_expression "(long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl._M_finish" (field_expression "(long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_>\n                             ._M_impl" (binary_expression "(long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_>_" (binary_expression "(long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64>_" (binary_expression "(long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold::Symbol_value<64" (binary_expression "(long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std::allocator<gold" (binary_expression "(long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64>,_std" (binary_expression "(long)(object->local_values_).\n                             super__Vector_base<gold::Symbol_value<64" (binary_expression "(long)(object->local_values_).\n                             super__Vector_base<gold" (cast_expression "(long)(object->local_values_).\n                             super__Vector_base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "(object->local_values_).\n                             super__Vector_base" (parenthesized_expression "(object->local_values_)" ( (field_expression "object->local_values_" identifier -> field_identifier) )) . field_identifier)) < identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) - (cast_expression "(long)pSVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) >> number_literal) )) * number_literal) ))) <= identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }" { comment (labeled_statement "gold::do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");" (call_expression "do_gold_unreachable\n                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry")" identifier (argument_list "("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""set_must_have_output_symtab_entry"" " string_content ") ))) ;)) })) (expression_statement "pSVar5 = pSVar5 + uVar12;" (assignment_expression "pSVar5 = pSVar5 + uVar12" identifier = (binary_expression "pSVar5 + uVar12" identifier + identifier)) ;) (expression_statement "uVar2 = pSVar5->output_symtab_index_;" (assignment_expression "uVar2 = pSVar5->output_symtab_index_" identifier = (field_expression "pSVar5->output_symtab_index_" identifier -> field_identifier)) ;) (if_statement "if ((uVar2 != 0) && (uVar2 != 0xfffffffe)) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }" if (parenthesized_expression "((uVar2 != 0) && (uVar2 != 0xfffffffe))" ( (binary_expression "(uVar2 != 0) && (uVar2 != 0xfffffffe)" (parenthesized_expression "(uVar2 != 0)" ( (binary_expression "uVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar2 != 0xfffffffe)" ( (binary_expression "uVar2 != 0xfffffffe" identifier != number_literal) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }" { comment (labeled_statement "gold::do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");" (call_expression "do_gold_unreachable\n                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry")" identifier (argument_list "("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""set_must_have_output_symtab_entry"" " string_content ") ))) ;)) })) (expression_statement "pSVar5->output_symtab_index_ = 0xfffffffe;" (assignment_expression "pSVar5->output_symtab_index_ = 0xfffffffe" (field_expression "pSVar5->output_symtab_index_" identifier -> field_identifier) = number_literal) ;) (expression_statement "local_39[0] = '\0';" (assignment_expression "local_39[0] = '\0'" (subscript_expression "local_39[0]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (labeled_statement "std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);" statement_identifier (ERROR "::vector<unsigned_char,_std::allocator<unsigned_char>_>:" : : (comma_expression "vector<unsigned_char,_std" (binary_expression "vector<unsigned_char" identifier < identifier) , identifier) : : (binary_expression "allocator<unsigned_char>_" (binary_expression "allocator<unsigned_char" identifier < identifier) > identifier) > :) : (expression_statement "emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);" (binary_expression "emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39)" (binary_expression "emplace_back<unsigned_char" identifier < identifier) > (parenthesized_expression "(&rr->reloc_strategies_,local_39)" ( (comma_expression "&rr->reloc_strategies_,local_39" (pointer_expression "&rr->reloc_strategies_" & (field_expression "rr->reloc_strategies_" identifier -> field_identifier)) , identifier) ))) ;)) }))) }) (else_clause "else {\n        local_39[0] = '\0';\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n      }" else (compound_statement "{\n        local_39[0] = '\0';\n        std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);\n      }" { (expression_statement "local_39[0] = '\0';" (assignment_expression "local_39[0] = '\0'" (subscript_expression "local_39[0]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (labeled_statement "std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);" statement_identifier (ERROR "::vector<unsigned_char,_std::allocator<unsigned_char>_>:" : : (comma_expression "vector<unsigned_char,_std" (binary_expression "vector<unsigned_char" identifier < identifier) , identifier) : : (binary_expression "allocator<unsigned_char>_" (binary_expression "allocator<unsigned_char" identifier < identifier) > identifier) > :) : (expression_statement "emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39);" (binary_expression "emplace_back<unsigned_char>\n                  (&rr->reloc_strategies_,local_39)" (binary_expression "emplace_back<unsigned_char" identifier < identifier) > (parenthesized_expression "(&rr->reloc_strategies_,local_39)" ( (comma_expression "&rr->reloc_strategies_,local_39" (pointer_expression "&rr->reloc_strategies_" & (field_expression "rr->reloc_strategies_" identifier -> field_identifier)) , identifier) ))) ;)) }))) (expression_statement "rr->output_reloc_count_ = rr->output_reloc_count_ + 1;" (assignment_expression "rr->output_reloc_count_ = rr->output_reloc_count_ + 1" (field_expression "rr->output_reloc_count_" identifier -> field_identifier) = (binary_expression "rr->output_reloc_count_ + 1" (field_expression "rr->output_reloc_count_" identifier -> field_identifier) + number_literal)) ;) (expression_statement "sVar11 = sVar11 + 1;" (assignment_expression "sVar11 = sVar11 + 1" identifier = (binary_expression "sVar11 + 1" identifier + number_literal)) ;) (expression_statement "prelocs = (uchar *)((long)prelocs + 0x18);" (assignment_expression "prelocs = (uchar *)((long)prelocs + 0x18)" identifier = (cast_expression "(uchar *)((long)prelocs + 0x18)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)prelocs + 0x18)" ( (binary_expression "(long)prelocs + 0x18" (cast_expression "(long)prelocs" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(reloc_count != sVar11)" ( (binary_expression "reloc_count != sVar11" identifier != identifier) )) ;) })) (return_statement "return;" return ;) (ERROR "}" }))
(translation_unit "void FUN_002fa0d0(void)\n\n{\n  int *piVar1;\n  ushort uVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  long lVar6;\n  long *in_RCX;\n  long lVar7;\n  undefined4 in_R8D;\n  int in_R9D;\n  long lVar8;\n  ulong uVar9;\n  undefined8 *in_stack_00000008;\n  long in_stack_00000010;\n  undefined8 in_stack_00000018;\n  char in_stack_00000020;\n  ulong in_stack_00000028;\n  long in_stack_00000030;\n  long in_stack_00000038;\n  undefined1 local_39 [9];\n  \n  if (in_R9D != 4) {\n                    \n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }\n  if (in_stack_00000010 != 0) {\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }\n  return;\n}\n\n" (function_definition "void FUN_002fa0d0(void)\n\n{\n  int *piVar1;\n  ushort uVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  long lVar6;\n  long *in_RCX;\n  long lVar7;\n  undefined4 in_R8D;\n  int in_R9D;\n  long lVar8;\n  ulong uVar9;\n  undefined8 *in_stack_00000008;\n  long in_stack_00000010;\n  undefined8 in_stack_00000018;\n  char in_stack_00000020;\n  ulong in_stack_00000028;\n  long in_stack_00000030;\n  long in_stack_00000038;\n  undefined1 local_39 [9];\n  \n  if (in_R9D != 4) {\n                    \n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }\n  if (in_stack_00000010 != 0) {\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }\n  return;\n}" primitive_type (function_declarator "FUN_002fa0d0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  int *piVar1;\n  ushort uVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  long lVar6;\n  long *in_RCX;\n  long lVar7;\n  undefined4 in_R8D;\n  int in_R9D;\n  long lVar8;\n  ulong uVar9;\n  undefined8 *in_stack_00000008;\n  long in_stack_00000010;\n  undefined8 in_stack_00000018;\n  char in_stack_00000020;\n  ulong in_stack_00000028;\n  long in_stack_00000030;\n  long in_stack_00000038;\n  undefined1 local_39 [9];\n  \n  if (in_R9D != 4) {\n                    \n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }\n  if (in_stack_00000010 != 0) {\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }\n  return;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "ushort uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "char cVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "long lVar6;" (sized_type_specifier "long" long) identifier ;) (declaration "long *in_RCX;" (sized_type_specifier "long" long) (pointer_declarator "*in_RCX" * identifier) ;) (declaration "long lVar7;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined4 in_R8D;" type_identifier identifier ;) (declaration "int in_R9D;" primitive_type identifier ;) (declaration "long lVar8;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar9;" type_identifier identifier ;) (declaration "undefined8 *in_stack_00000008;" type_identifier (pointer_declarator "*in_stack_00000008" * identifier) ;) (declaration "long in_stack_00000010;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 in_stack_00000018;" type_identifier identifier ;) (declaration "char in_stack_00000020;" primitive_type identifier ;) (declaration "ulong in_stack_00000028;" type_identifier identifier ;) (declaration "long in_stack_00000030;" (sized_type_specifier "long" long) identifier ;) (declaration "long in_stack_00000038;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined1 local_39 [9];" type_identifier (array_declarator "local_39 [9]" identifier [ number_literal ]) ;) (if_statement "if (in_R9D != 4) {\n                    \n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }" if (parenthesized_expression "(in_R9D != 4)" ( (binary_expression "in_R9D != 4" identifier != number_literal) )) (compound_statement "{\n                    \n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }" { (expression_statement "FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");" (call_expression "FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan")" identifier (argument_list "("../../gold/aarch64.cc",0x202f,"emit_relocs_scan")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""emit_relocs_scan"" " string_content ") ))) ;) })) (if_statement "if (in_stack_00000010 != 0) {\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }" if (parenthesized_expression "(in_stack_00000010 != 0)" ( (binary_expression "in_stack_00000010 != 0" identifier != number_literal) )) (compound_statement "{\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }" { (expression_statement "lVar8 = 0;" (assignment_expression "lVar8 = 0" identifier = number_literal) ;) (do_statement "do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);" do (compound_statement "{\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    }" { (while_statement "while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }" while (parenthesized_expression "((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0')))" ( (parenthesized_expression "(in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))" ( (binary_expression "in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0')" (binary_expression "in_stack_00000020 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "(cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0')" ( (comma_expression "cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'" (assignment_expression "cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008)" identifier = (call_expression "FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008)" identifier (argument_list "(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008)" ( identifier , identifier , identifier , (pointer_expression "*in_stack_00000008" * identifier) )))) , (binary_expression "cVar4 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence '))) ))) )) )) (compound_statement "{\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }" { (labeled_statement "LAB_002fa218:\n        local_39[0] = 8;" statement_identifier : (expression_statement "local_39[0] = 8;" (assignment_expression "local_39[0] = 8" (subscript_expression "local_39[0]" identifier [ number_literal ]) = number_literal) ;)) (expression_statement "lVar8 = lVar8 + 1;" (assignment_expression "lVar8 = lVar8 + 1" identifier = (binary_expression "lVar8 + 1" identifier + number_literal)) ;) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" identifier (argument_list "(in_stack_00000038,local_39)" ( identifier , identifier ))) ;) (expression_statement "in_stack_00000008 = in_stack_00000008 + 3;" (assignment_expression "in_stack_00000008 = in_stack_00000008 + 3" identifier = (binary_expression "in_stack_00000008 + 3" identifier + number_literal)) ;) (if_statement "if (in_stack_00000010 == lVar8) {\n          return;\n        }" if (parenthesized_expression "(in_stack_00000010 == lVar8)" ( (binary_expression "in_stack_00000010 == lVar8" identifier == identifier) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) })) (expression_statement "uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);" (assignment_expression "uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc)" identifier = (binary_expression "(ulong)*(uint *)((long)in_stack_00000008 + 0xc)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)((long)in_stack_00000008 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)in_stack_00000008 + 0xc)" ( (binary_expression "(long)in_stack_00000008 + 0xc" (cast_expression "(long)in_stack_00000008" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (if_statement "if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }" if (parenthesized_expression "(uVar9 < in_stack_00000028)" ( (binary_expression "uVar9 < in_stack_00000028" identifier < identifier) )) (compound_statement "{\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }" { (if_statement "if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }" if (parenthesized_expression "(in_stack_00000030 == 0)" ( (binary_expression "in_stack_00000030 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }" { (expression_statement "FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");" (call_expression "FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs")" identifier (argument_list "("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs")" ( (string_literal ""../../gold/target-reloc.h"" " string_content ") , number_literal , (string_literal ""scan_relocatable_relocs"" " string_content ") ))) ;) })) (expression_statement "lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;" (assignment_expression "lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030" identifier = (binary_expression "(ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030" (call_expression "(ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18)" ( (binary_expression "*(uint *)((long)in_stack_00000008 + 0xc) * 0x18" (pointer_expression "*(uint *)((long)in_stack_00000008 + 0xc)" * (cast_expression "(uint *)((long)in_stack_00000008 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)in_stack_00000008 + 0xc)" ( (binary_expression "(long)in_stack_00000008 + 0xc" (cast_expression "(long)in_stack_00000008" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) * number_literal) ))) + identifier)) ;) (expression_statement "uVar2 = *(ushort *)(lVar7 + 6);" (assignment_expression "uVar2 = *(ushort *)(lVar7 + 6)" identifier = (pointer_expression "*(ushort *)(lVar7 + 6)" * (cast_expression "(ushort *)(lVar7 + 6)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar7 + 6)" ( (binary_expression "lVar7 + 6" identifier + number_literal) ))))) ;) (expression_statement "uVar5 = (uint)uVar2;" (assignment_expression "uVar5 = (uint)uVar2" identifier = (cast_expression "(uint)uVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" if (parenthesized_expression "(uVar2 < 0xff00)" ( (binary_expression "uVar2 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }" { (labeled_statement "LAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }" statement_identifier : (if_statement "if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }" if (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) (compound_statement "{\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }" { (if_statement "if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }" if (parenthesized_expression "((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5)" ( (binary_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5" (call_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(in_RCX[0xb] - in_RCX[10] >> 3)" ( (binary_expression "in_RCX[0xb] - in_RCX[10] >> 3" (binary_expression "in_RCX[0xb] - in_RCX[10]" (subscript_expression "in_RCX[0xb]" identifier [ number_literal ]) - (subscript_expression "in_RCX[10]" identifier [ number_literal ])) >> number_literal) ))) <= (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier)) )) (compound_statement "{\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }" { (expression_statement "FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");" (call_expression "FUN_00352af0("../../gold/object.h",0x50b,"is_section_included")" identifier (argument_list "("../../gold/object.h",0x50b,"is_section_included")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""is_section_included"" " string_content ") ))) ;) })) (if_statement "if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;" if (parenthesized_expression "(*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0)" ( (binary_expression "*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0" (pointer_expression "*(long *)(in_RCX[10] + (ulong)uVar5 * 8)" * (cast_expression "(long *)(in_RCX[10] + (ulong)uVar5 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_RCX[10] + (ulong)uVar5 * 8)" ( (binary_expression "in_RCX[10] + (ulong)uVar5 * 8" (subscript_expression "in_RCX[10]" identifier [ number_literal ]) + (binary_expression "(ulong)uVar5 * 8" (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_002fa218;" goto statement_identifier ;)) }))) }) (else_clause "else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" else (if_statement "if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" if (parenthesized_expression "(uVar2 == 0xffff)" ( (binary_expression "uVar2 == 0xffff" identifier == number_literal) )) (compound_statement "{\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" { (expression_statement "lVar6 = in_RCX[8];" (assignment_expression "lVar6 = in_RCX[8]" identifier = (subscript_expression "in_RCX[8]" identifier [ number_literal ])) ;) (if_statement "if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }" if (parenthesized_expression "(lVar6 == 0)" ( (binary_expression "lVar6 == 0" identifier == number_literal) )) (compound_statement "{\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }" { (expression_statement "lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);" (assignment_expression "lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX)" identifier = (call_expression "(**(code **)(*in_RCX + 0xd8))(in_RCX)" (parenthesized_expression "(**(code **)(*in_RCX + 0xd8))" ( (pointer_expression "**(code **)(*in_RCX + 0xd8)" * (pointer_expression "*(code **)(*in_RCX + 0xd8)" * (cast_expression "(code **)(*in_RCX + 0xd8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*in_RCX + 0xd8)" ( (binary_expression "*in_RCX + 0xd8" (pointer_expression "*in_RCX" * identifier) + number_literal) ))))) )) (argument_list "(in_RCX)" ( identifier )))) ;) (expression_statement "in_RCX[8] = lVar6;" (assignment_expression "in_RCX[8] = lVar6" (subscript_expression "in_RCX[8]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);" (assignment_expression "uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9)" identifier = (call_expression "FUN_00392c60(lVar6,in_RCX,uVar9)" identifier (argument_list "(lVar6,in_RCX,uVar9)" ( identifier , identifier , identifier )))) ;) (goto_statement "goto LAB_002fa2ce;" goto statement_identifier ;) })))) (if_statement "if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" if (parenthesized_expression "((*(byte *)(lVar7 + 4) & 0xf) == 3)" ( (binary_expression "(*(byte *)(lVar7 + 4) & 0xf) == 3" (parenthesized_expression "(*(byte *)(lVar7 + 4) & 0xf)" ( (binary_expression "*(byte *)(lVar7 + 4) & 0xf" (pointer_expression "*(byte *)(lVar7 + 4)" * (cast_expression "(byte *)(lVar7 + 4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar7 + 4)" ( (binary_expression "lVar7 + 4" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" { (if_statement "if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }" if (parenthesized_expression "(*(code **)(*in_RCX + 0xc0) == FUN_001a5070)" ( (binary_expression "*(code **)(*in_RCX + 0xc0) == FUN_001a5070" (pointer_expression "*(code **)(*in_RCX + 0xc0)" * (cast_expression "(code **)(*in_RCX + 0xc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*in_RCX + 0xc0)" ( (binary_expression "*in_RCX + 0xc0" (pointer_expression "*in_RCX" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }" { (if_statement "if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }" if (parenthesized_expression "((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5)" ( (binary_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5" (call_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(in_RCX[0xb] - in_RCX[10] >> 3)" ( (binary_expression "in_RCX[0xb] - in_RCX[10] >> 3" (binary_expression "in_RCX[0xb] - in_RCX[10]" (subscript_expression "in_RCX[0xb]" identifier [ number_literal ]) - (subscript_expression "in_RCX[10]" identifier [ number_literal ])) >> number_literal) ))) <= (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier)) )) (compound_statement "{\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }" { (expression_statement "FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");" (call_expression "FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section")" identifier (argument_list "("../../gold/object.h",0x5c8,"do_output_section")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""do_output_section"" " string_content ") ))) ;) })) (expression_statement "lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);" (assignment_expression "lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8)" identifier = (pointer_expression "*(long *)(in_RCX[10] + (ulong)uVar5 * 8)" * (cast_expression "(long *)(in_RCX[10] + (ulong)uVar5 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_RCX[10] + (ulong)uVar5 * 8)" ( (binary_expression "in_RCX[10] + (ulong)uVar5 * 8" (subscript_expression "in_RCX[10]" identifier [ number_literal ]) + (binary_expression "(ulong)uVar5 * 8" (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) ))))) ;) }) (else_clause "else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }" else (compound_statement "{\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }" { (expression_statement "lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);" (assignment_expression "lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5)" identifier = (call_expression "(**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5)" (parenthesized_expression "(**(code **)(*in_RCX + 0xc0))" ( (pointer_expression "**(code **)(*in_RCX + 0xc0)" * (pointer_expression "*(code **)(*in_RCX + 0xc0)" * (cast_expression "(code **)(*in_RCX + 0xc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*in_RCX + 0xc0)" ( (binary_expression "*in_RCX + 0xc0" (pointer_expression "*in_RCX" * identifier) + number_literal) ))))) )) (argument_list "(in_RCX,uVar5)" ( identifier , identifier )))) ;) }))) (expression_statement "*(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;" (assignment_expression "*(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1" (pointer_expression "*(byte *)(lVar7 + 200)" * (cast_expression "(byte *)(lVar7 + 200)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar7 + 200)" ( (binary_expression "lVar7 + 200" identifier + number_literal) )))) = (binary_expression "*(byte *)(lVar7 + 200) | 1" (pointer_expression "*(byte *)(lVar7 + 200)" * (cast_expression "(byte *)(lVar7 + 200)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar7 + 200)" ( (binary_expression "lVar7 + 200" identifier + number_literal) )))) | number_literal)) ;) (expression_statement "local_39[0] = 1;" (assignment_expression "local_39[0] = 1" (subscript_expression "local_39[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" identifier (argument_list "(in_stack_00000038,local_39)" ( identifier , identifier ))) ;) }) (else_clause "else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" else (compound_statement "{\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" { (if_statement "if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }" if (parenthesized_expression "((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9)" ( (binary_expression "(ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9" (call_expression "(ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555)" ( (binary_expression "(in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555" (parenthesized_expression "(in_RCX[0x2d] - in_RCX[0x2c] >> 3)" ( (binary_expression "in_RCX[0x2d] - in_RCX[0x2c] >> 3" (binary_expression "in_RCX[0x2d] - in_RCX[0x2c]" (subscript_expression "in_RCX[0x2d]" identifier [ number_literal ]) - (subscript_expression "in_RCX[0x2c]" identifier [ number_literal ])) >> number_literal) )) * number_literal) ))) <= identifier) )) (compound_statement "{\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }" { (expression_statement "FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");" (call_expression "FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry")" identifier (argument_list "("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""set_must_have_output_symtab_entry"" " string_content ") ))) ;) })) (expression_statement "piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);" (assignment_expression "piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18)" identifier = (cast_expression "(int *)(in_RCX[0x2c] + uVar9 * 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_RCX[0x2c] + uVar9 * 0x18)" ( (binary_expression "in_RCX[0x2c] + uVar9 * 0x18" (subscript_expression "in_RCX[0x2c]" identifier [ number_literal ]) + (binary_expression "uVar9 * 0x18" identifier * number_literal)) )))) ;) (expression_statement "iVar3 = *piVar1;" (assignment_expression "iVar3 = *piVar1" identifier = (pointer_expression "*piVar1" * identifier)) ;) (if_statement "if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }" if (parenthesized_expression "((iVar3 != 0) && (iVar3 != -2))" ( (binary_expression "(iVar3 != 0) && (iVar3 != -2)" (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar3 != -2)" ( (binary_expression "iVar3 != -2" identifier != number_literal) ))) )) (compound_statement "{\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }" { (expression_statement "FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");" (call_expression "FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry")" identifier (argument_list "("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""set_must_have_output_symtab_entry"" " string_content ") ))) ;) })) (expression_statement "*piVar1 = -2;" (assignment_expression "*piVar1 = -2" (pointer_expression "*piVar1" * identifier) = number_literal) ;) (expression_statement "local_39[0] = 0;" (assignment_expression "local_39[0] = 0" (subscript_expression "local_39[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" identifier (argument_list "(in_stack_00000038,local_39)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }" else (compound_statement "{\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }" { (expression_statement "local_39[0] = 0;" (assignment_expression "local_39[0] = 0" (subscript_expression "local_39[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" identifier (argument_list "(in_stack_00000038,local_39)" ( identifier , identifier ))) ;) }))) (expression_statement "*(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;" (assignment_expression "*(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1" (pointer_expression "*(long *)(in_stack_00000038 + 0x18)" * (cast_expression "(long *)(in_stack_00000038 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_stack_00000038 + 0x18)" ( (binary_expression "in_stack_00000038 + 0x18" identifier + number_literal) )))) = (binary_expression "*(long *)(in_stack_00000038 + 0x18) + 1" (pointer_expression "*(long *)(in_stack_00000038 + 0x18)" * (cast_expression "(long *)(in_stack_00000038 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_stack_00000038 + 0x18)" ( (binary_expression "in_stack_00000038 + 0x18" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "lVar8 = lVar8 + 1;" (assignment_expression "lVar8 = lVar8 + 1" identifier = (binary_expression "lVar8 + 1" identifier + number_literal)) ;) (expression_statement "in_stack_00000008 = in_stack_00000008 + 3;" (assignment_expression "in_stack_00000008 = in_stack_00000008 + 3" identifier = (binary_expression "in_stack_00000008 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(in_stack_00000010 != lVar8)" ( (binary_expression "in_stack_00000010 != lVar8" identifier != identifier) )) ;) })) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT != (char_literal ' escape_sequence ')) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , (pointer_expression * IDENT) )))) , (binary_expression IDENT == (char_literal ' escape_sequence '))) ))) )) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (return_statement return ;) })) })) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) * LIT) ))) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) }))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (goto_statement goto statement_identifier ;) })))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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 * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) | LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) )) * LIT) ))) <= IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (return_statement return ;) })))
(function_definition "void FUN_002fa0d0(void)\n\n{\n  int *piVar1;\n  ushort uVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  long lVar6;\n  long *in_RCX;\n  long lVar7;\n  undefined4 in_R8D;\n  int in_R9D;\n  long lVar8;\n  ulong uVar9;\n  undefined8 *in_stack_00000008;\n  long in_stack_00000010;\n  undefined8 in_stack_00000018;\n  char in_stack_00000020;\n  ulong in_stack_00000028;\n  long in_stack_00000030;\n  long in_stack_00000038;\n  undefined1 local_39 [9];\n  \n  if (in_R9D != 4) {\n                    \n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }\n  if (in_stack_00000010 != 0) {\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }\n  return;\n}" (primitive_type "void") (function_declarator "FUN_002fa0d0(void)" (identifier "FUN_002fa0d0") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  int *piVar1;\n  ushort uVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  long lVar6;\n  long *in_RCX;\n  long lVar7;\n  undefined4 in_R8D;\n  int in_R9D;\n  long lVar8;\n  ulong uVar9;\n  undefined8 *in_stack_00000008;\n  long in_stack_00000010;\n  undefined8 in_stack_00000018;\n  char in_stack_00000020;\n  ulong in_stack_00000028;\n  long in_stack_00000030;\n  long in_stack_00000038;\n  undefined1 local_39 [9];\n  \n  if (in_R9D != 4) {\n                    \n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }\n  if (in_stack_00000010 != 0) {\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }\n  return;\n}" ({ "{") (declaration "int *piVar1;" (primitive_type "int") (pointer_declarator "*piVar1" (* "*") (identifier "piVar1")) (; ";")) (declaration "ushort uVar2;" (type_identifier "ushort") (identifier "uVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "char cVar4;" (primitive_type "char") (identifier "cVar4") (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "long lVar6;" (sized_type_specifier "long" (long "long")) (identifier "lVar6") (; ";")) (declaration "long *in_RCX;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*in_RCX" (* "*") (identifier "in_RCX")) (; ";")) (declaration "long lVar7;" (sized_type_specifier "long" (long "long")) (identifier "lVar7") (; ";")) (declaration "undefined4 in_R8D;" (type_identifier "undefined4") (identifier "in_R8D") (; ";")) (declaration "int in_R9D;" (primitive_type "int") (identifier "in_R9D") (; ";")) (declaration "long lVar8;" (sized_type_specifier "long" (long "long")) (identifier "lVar8") (; ";")) (declaration "ulong uVar9;" (type_identifier "ulong") (identifier "uVar9") (; ";")) (declaration "undefined8 *in_stack_00000008;" (type_identifier "undefined8") (pointer_declarator "*in_stack_00000008" (* "*") (identifier "in_stack_00000008")) (; ";")) (declaration "long in_stack_00000010;" (sized_type_specifier "long" (long "long")) (identifier "in_stack_00000010") (; ";")) (declaration "undefined8 in_stack_00000018;" (type_identifier "undefined8") (identifier "in_stack_00000018") (; ";")) (declaration "char in_stack_00000020;" (primitive_type "char") (identifier "in_stack_00000020") (; ";")) (declaration "ulong in_stack_00000028;" (type_identifier "ulong") (identifier "in_stack_00000028") (; ";")) (declaration "long in_stack_00000030;" (sized_type_specifier "long" (long "long")) (identifier "in_stack_00000030") (; ";")) (declaration "long in_stack_00000038;" (sized_type_specifier "long" (long "long")) (identifier "in_stack_00000038") (; ";")) (declaration "undefined1 local_39 [9];" (type_identifier "undefined1") (array_declarator "local_39 [9]" (identifier "local_39") ([ "[") (number_literal "9") (] "]")) (; ";")) (if_statement "if (in_R9D != 4) {\n                    \n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }" (if "if") (parenthesized_expression "(in_R9D != 4)" (( "(") (binary_expression "in_R9D != 4" (identifier "in_R9D") (!= "!=") (number_literal "4")) () ")")) (compound_statement "{\n                    \n    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");\n  }" ({ "{") (expression_statement "FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");" (call_expression "FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan")" (identifier "FUN_00352af0") (argument_list "("../../gold/aarch64.cc",0x202f,"emit_relocs_scan")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x202f") (, ",") (string_literal ""emit_relocs_scan"" (" """) (string_content "emit_relocs_scan") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (in_stack_00000010 != 0) {\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }" (if "if") (parenthesized_expression "(in_stack_00000010 != 0)" (( "(") (binary_expression "in_stack_00000010 != 0" (identifier "in_stack_00000010") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    lVar8 = 0;\n    do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);\n  }" ({ "{") (expression_statement "lVar8 = 0;" (assignment_expression "lVar8 = 0" (identifier "lVar8") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    } while (in_stack_00000010 != lVar8);" (do "do") (compound_statement "{\n      while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }\n      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);\n      if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }\n      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;\n      lVar8 = lVar8 + 1;\n      in_stack_00000008 = in_stack_00000008 + 3;\n    }" ({ "{") (while_statement "while ((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))) {\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }" (while "while") (parenthesized_expression "((in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0')))" (( "(") (parenthesized_expression "(in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'))" (( "(") (binary_expression "in_stack_00000020 != '\0' &&\n             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0')" (binary_expression "in_stack_00000020 != '\0'" (identifier "in_stack_00000020") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (&& "&&") (parenthesized_expression "(cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0')" (( "(") (comma_expression "cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),\n             cVar4 == '\0'" (assignment_expression "cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008)" (identifier "cVar4") (= "=") (call_expression "FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008)" (identifier "FUN_003cfe70") (argument_list "(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008)" (( "(") (identifier "in_stack_00000018") (, ",") (identifier "in_RCX") (, ",") (identifier "in_R8D") (, ",") (pointer_expression "*in_stack_00000008" (* "*") (identifier "in_stack_00000008")) () ")")))) (, ",") (binary_expression "cVar4 == '\0'" (identifier "cVar4") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")"))) () ")")) () ")")) (compound_statement "{\nLAB_002fa218:\n        local_39[0] = 8;\n        lVar8 = lVar8 + 1;\n        FUN_001a5c60(in_stack_00000038,local_39);\n        in_stack_00000008 = in_stack_00000008 + 3;\n        if (in_stack_00000010 == lVar8) {\n          return;\n        }\n      }" ({ "{") (labeled_statement "LAB_002fa218:\n        local_39[0] = 8;" (statement_identifier "LAB_002fa218") (: ":") (expression_statement "local_39[0] = 8;" (assignment_expression "local_39[0] = 8" (subscript_expression "local_39[0]" (identifier "local_39") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "8")) (; ";"))) (expression_statement "lVar8 = lVar8 + 1;" (assignment_expression "lVar8 = lVar8 + 1" (identifier "lVar8") (= "=") (binary_expression "lVar8 + 1" (identifier "lVar8") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" (identifier "FUN_001a5c60") (argument_list "(in_stack_00000038,local_39)" (( "(") (identifier "in_stack_00000038") (, ",") (identifier "local_39") () ")"))) (; ";")) (expression_statement "in_stack_00000008 = in_stack_00000008 + 3;" (assignment_expression "in_stack_00000008 = in_stack_00000008 + 3" (identifier "in_stack_00000008") (= "=") (binary_expression "in_stack_00000008 + 3" (identifier "in_stack_00000008") (+ "+") (number_literal "3"))) (; ";")) (if_statement "if (in_stack_00000010 == lVar8) {\n          return;\n        }" (if "if") (parenthesized_expression "(in_stack_00000010 == lVar8)" (( "(") (binary_expression "in_stack_00000010 == lVar8" (identifier "in_stack_00000010") (== "==") (identifier "lVar8")) () ")")) (compound_statement "{\n          return;\n        }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (} "}"))) (expression_statement "uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);" (assignment_expression "uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc)" (identifier "uVar9") (= "=") (binary_expression "(ulong)*(uint *)((long)in_stack_00000008 + 0xc)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (cast_expression "(uint *)((long)in_stack_00000008 + 0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)in_stack_00000008 + 0xc)" (( "(") (binary_expression "(long)in_stack_00000008 + 0xc" (cast_expression "(long)in_stack_00000008" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "in_stack_00000008")) (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (if_statement "if (uVar9 < in_stack_00000028) {\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }\n      else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }" (if "if") (parenthesized_expression "(uVar9 < in_stack_00000028)" (( "(") (binary_expression "uVar9 < in_stack_00000028" (identifier "uVar9") (< "<") (identifier "in_stack_00000028")) () ")")) (compound_statement "{\n        if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }\n        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;\n        uVar2 = *(ushort *)(lVar7 + 6);\n        uVar5 = (uint)uVar2;\n        if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }\n        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n      }" ({ "{") (if_statement "if (in_stack_00000030 == 0) {\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }" (if "if") (parenthesized_expression "(in_stack_00000030 == 0)" (( "(") (binary_expression "in_stack_00000030 == 0" (identifier "in_stack_00000030") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n        }" ({ "{") (expression_statement "FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");" (call_expression "FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs")" (identifier "FUN_00352af0") (argument_list "("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs")" (( "(") (string_literal ""../../gold/target-reloc.h"" (" """) (string_content "../../gold/target-reloc.h") (" """)) (, ",") (number_literal "0x2e4") (, ",") (string_literal ""scan_relocatable_relocs"" (" """) (string_content "scan_relocatable_relocs") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;" (assignment_expression "lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030" (identifier "lVar7") (= "=") (binary_expression "(ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030" (call_expression "(ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18)" (( "(") (binary_expression "*(uint *)((long)in_stack_00000008 + 0xc) * 0x18" (pointer_expression "*(uint *)((long)in_stack_00000008 + 0xc)" (* "*") (cast_expression "(uint *)((long)in_stack_00000008 + 0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)in_stack_00000008 + 0xc)" (( "(") (binary_expression "(long)in_stack_00000008 + 0xc" (cast_expression "(long)in_stack_00000008" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "in_stack_00000008")) (+ "+") (number_literal "0xc")) () ")")))) (* "*") (number_literal "0x18")) () ")"))) (+ "+") (identifier "in_stack_00000030"))) (; ";")) (expression_statement "uVar2 = *(ushort *)(lVar7 + 6);" (assignment_expression "uVar2 = *(ushort *)(lVar7 + 6)" (identifier "uVar2") (= "=") (pointer_expression "*(ushort *)(lVar7 + 6)" (* "*") (cast_expression "(ushort *)(lVar7 + 6)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar7 + 6)" (( "(") (binary_expression "lVar7 + 6" (identifier "lVar7") (+ "+") (number_literal "6")) () ")"))))) (; ";")) (expression_statement "uVar5 = (uint)uVar2;" (assignment_expression "uVar5 = (uint)uVar2" (identifier "uVar5") (= "=") (cast_expression "(uint)uVar2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar2"))) (; ";")) (if_statement "if (uVar2 < 0xff00) {\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }\n        else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" (if "if") (parenthesized_expression "(uVar2 < 0xff00)" (( "(") (binary_expression "uVar2 < 0xff00" (identifier "uVar2") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }\n        }" ({ "{") (labeled_statement "LAB_002fa2ce:\n          if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }" (statement_identifier "LAB_002fa2ce") (: ":") (if_statement "if (uVar5 != 0) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }" (if "if") (parenthesized_expression "(uVar5 != 0)" (( "(") (binary_expression "uVar5 != 0" (identifier "uVar5") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;\n          }" ({ "{") (if_statement "if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }" (if "if") (parenthesized_expression "((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5)" (( "(") (binary_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5" (call_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(in_RCX[0xb] - in_RCX[10] >> 3)" (( "(") (binary_expression "in_RCX[0xb] - in_RCX[10] >> 3" (binary_expression "in_RCX[0xb] - in_RCX[10]" (subscript_expression "in_RCX[0xb]" (identifier "in_RCX") ([ "[") (number_literal "0xb") (] "]")) (- "-") (subscript_expression "in_RCX[10]" (identifier "in_RCX") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "3")) () ")"))) (<= "<=") (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5"))) () ")")) (compound_statement "{\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }" ({ "{") (expression_statement "FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");" (call_expression "FUN_00352af0("../../gold/object.h",0x50b,"is_section_included")" (identifier "FUN_00352af0") (argument_list "("../../gold/object.h",0x50b,"is_section_included")" (( "(") (string_literal ""../../gold/object.h"" (" """) (string_content "../../gold/object.h") (" """)) (, ",") (number_literal "0x50b") (, ",") (string_literal ""is_section_included"" (" """) (string_content "is_section_included") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;" (if "if") (parenthesized_expression "(*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0)" (( "(") (binary_expression "*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0" (pointer_expression "*(long *)(in_RCX[10] + (ulong)uVar5 * 8)" (* "*") (cast_expression "(long *)(in_RCX[10] + (ulong)uVar5 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_RCX[10] + (ulong)uVar5 * 8)" (( "(") (binary_expression "in_RCX[10] + (ulong)uVar5 * 8" (subscript_expression "in_RCX[10]" (identifier "in_RCX") ([ "[") (number_literal "10") (] "]")) (+ "+") (binary_expression "(ulong)uVar5 * 8" (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5")) (* "*") (number_literal "8"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002fa218;" (goto "goto") (statement_identifier "LAB_002fa218") (; ";"))) (} "}")))) (} "}")) (else_clause "else if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" (else "else") (if_statement "if (uVar2 == 0xffff) {\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" (if "if") (parenthesized_expression "(uVar2 == 0xffff)" (( "(") (binary_expression "uVar2 == 0xffff" (identifier "uVar2") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n          lVar6 = in_RCX[8];\n          if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }\n          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);\n          goto LAB_002fa2ce;\n        }" ({ "{") (expression_statement "lVar6 = in_RCX[8];" (assignment_expression "lVar6 = in_RCX[8]" (identifier "lVar6") (= "=") (subscript_expression "in_RCX[8]" (identifier "in_RCX") ([ "[") (number_literal "8") (] "]"))) (; ";")) (if_statement "if (lVar6 == 0) {\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }" (if "if") (parenthesized_expression "(lVar6 == 0)" (( "(") (binary_expression "lVar6 == 0" (identifier "lVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);\n            in_RCX[8] = lVar6;\n          }" ({ "{") (expression_statement "lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);" (assignment_expression "lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX)" (identifier "lVar6") (= "=") (call_expression "(**(code **)(*in_RCX + 0xd8))(in_RCX)" (parenthesized_expression "(**(code **)(*in_RCX + 0xd8))" (( "(") (pointer_expression "**(code **)(*in_RCX + 0xd8)" (* "*") (pointer_expression "*(code **)(*in_RCX + 0xd8)" (* "*") (cast_expression "(code **)(*in_RCX + 0xd8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*in_RCX + 0xd8)" (( "(") (binary_expression "*in_RCX + 0xd8" (pointer_expression "*in_RCX" (* "*") (identifier "in_RCX")) (+ "+") (number_literal "0xd8")) () ")"))))) () ")")) (argument_list "(in_RCX)" (( "(") (identifier "in_RCX") () ")")))) (; ";")) (expression_statement "in_RCX[8] = lVar6;" (assignment_expression "in_RCX[8] = lVar6" (subscript_expression "in_RCX[8]" (identifier "in_RCX") ([ "[") (number_literal "8") (] "]")) (= "=") (identifier "lVar6")) (; ";")) (} "}"))) (expression_statement "uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);" (assignment_expression "uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9)" (identifier "uVar5") (= "=") (call_expression "FUN_00392c60(lVar6,in_RCX,uVar9)" (identifier "FUN_00392c60") (argument_list "(lVar6,in_RCX,uVar9)" (( "(") (identifier "lVar6") (, ",") (identifier "in_RCX") (, ",") (identifier "uVar9") () ")")))) (; ";")) (goto_statement "goto LAB_002fa2ce;" (goto "goto") (statement_identifier "LAB_002fa2ce") (; ";")) (} "}"))))) (if_statement "if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }\n        else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" (if "if") (parenthesized_expression "((*(byte *)(lVar7 + 4) & 0xf) == 3)" (( "(") (binary_expression "(*(byte *)(lVar7 + 4) & 0xf) == 3" (parenthesized_expression "(*(byte *)(lVar7 + 4) & 0xf)" (( "(") (binary_expression "*(byte *)(lVar7 + 4) & 0xf" (pointer_expression "*(byte *)(lVar7 + 4)" (* "*") (cast_expression "(byte *)(lVar7 + 4)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar7 + 4)" (( "(") (binary_expression "lVar7 + 4" (identifier "lVar7") (+ "+") (number_literal "4")) () ")")))) (& "&") (number_literal "0xf")) () ")")) (== "==") (number_literal "3")) () ")")) (compound_statement "{\n          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }\n          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;\n          local_39[0] = 1;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" ({ "{") (if_statement "if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }\n          else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }" (if "if") (parenthesized_expression "(*(code **)(*in_RCX + 0xc0) == FUN_001a5070)" (( "(") (binary_expression "*(code **)(*in_RCX + 0xc0) == FUN_001a5070" (pointer_expression "*(code **)(*in_RCX + 0xc0)" (* "*") (cast_expression "(code **)(*in_RCX + 0xc0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*in_RCX + 0xc0)" (( "(") (binary_expression "*in_RCX + 0xc0" (pointer_expression "*in_RCX" (* "*") (identifier "in_RCX")) (+ "+") (number_literal "0xc0")) () ")")))) (== "==") (identifier "FUN_001a5070")) () ")")) (compound_statement "{\n            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);\n          }" ({ "{") (if_statement "if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }" (if "if") (parenthesized_expression "((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5)" (( "(") (binary_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5" (call_expression "(ulong)(in_RCX[0xb] - in_RCX[10] >> 3)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(in_RCX[0xb] - in_RCX[10] >> 3)" (( "(") (binary_expression "in_RCX[0xb] - in_RCX[10] >> 3" (binary_expression "in_RCX[0xb] - in_RCX[10]" (subscript_expression "in_RCX[0xb]" (identifier "in_RCX") ([ "[") (number_literal "0xb") (] "]")) (- "-") (subscript_expression "in_RCX[10]" (identifier "in_RCX") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "3")) () ")"))) (<= "<=") (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5"))) () ")")) (compound_statement "{\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }" ({ "{") (expression_statement "FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");" (call_expression "FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section")" (identifier "FUN_00352af0") (argument_list "("../../gold/object.h",0x5c8,"do_output_section")" (( "(") (string_literal ""../../gold/object.h"" (" """) (string_content "../../gold/object.h") (" """)) (, ",") (number_literal "0x5c8") (, ",") (string_literal ""do_output_section"" (" """) (string_content "do_output_section") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);" (assignment_expression "lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8)" (identifier "lVar7") (= "=") (pointer_expression "*(long *)(in_RCX[10] + (ulong)uVar5 * 8)" (* "*") (cast_expression "(long *)(in_RCX[10] + (ulong)uVar5 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_RCX[10] + (ulong)uVar5 * 8)" (( "(") (binary_expression "in_RCX[10] + (ulong)uVar5 * 8" (subscript_expression "in_RCX[10]" (identifier "in_RCX") ([ "[") (number_literal "10") (] "]")) (+ "+") (binary_expression "(ulong)uVar5 * 8" (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5")) (* "*") (number_literal "8"))) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }" (else "else") (compound_statement "{\n            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);\n          }" ({ "{") (expression_statement "lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);" (assignment_expression "lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5)" (identifier "lVar7") (= "=") (call_expression "(**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5)" (parenthesized_expression "(**(code **)(*in_RCX + 0xc0))" (( "(") (pointer_expression "**(code **)(*in_RCX + 0xc0)" (* "*") (pointer_expression "*(code **)(*in_RCX + 0xc0)" (* "*") (cast_expression "(code **)(*in_RCX + 0xc0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*in_RCX + 0xc0)" (( "(") (binary_expression "*in_RCX + 0xc0" (pointer_expression "*in_RCX" (* "*") (identifier "in_RCX")) (+ "+") (number_literal "0xc0")) () ")"))))) () ")")) (argument_list "(in_RCX,uVar5)" (( "(") (identifier "in_RCX") (, ",") (identifier "uVar5") () ")")))) (; ";")) (} "}")))) (expression_statement "*(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;" (assignment_expression "*(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1" (pointer_expression "*(byte *)(lVar7 + 200)" (* "*") (cast_expression "(byte *)(lVar7 + 200)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar7 + 200)" (( "(") (binary_expression "lVar7 + 200" (identifier "lVar7") (+ "+") (number_literal "200")) () ")")))) (= "=") (binary_expression "*(byte *)(lVar7 + 200) | 1" (pointer_expression "*(byte *)(lVar7 + 200)" (* "*") (cast_expression "(byte *)(lVar7 + 200)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar7 + 200)" (( "(") (binary_expression "lVar7 + 200" (identifier "lVar7") (+ "+") (number_literal "200")) () ")")))) (| "|") (number_literal "1"))) (; ";")) (expression_statement "local_39[0] = 1;" (assignment_expression "local_39[0] = 1" (subscript_expression "local_39[0]" (identifier "local_39") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "1")) (; ";")) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" (identifier "FUN_001a5c60") (argument_list "(in_stack_00000038,local_39)" (( "(") (identifier "in_stack_00000038") (, ",") (identifier "local_39") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" (else "else") (compound_statement "{\n          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }\n          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);\n          iVar3 = *piVar1;\n          if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }\n          *piVar1 = -2;\n          local_39[0] = 0;\n          FUN_001a5c60(in_stack_00000038,local_39);\n        }" ({ "{") (if_statement "if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }" (if "if") (parenthesized_expression "((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9)" (( "(") (binary_expression "(ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9" (call_expression "(ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555)" (( "(") (binary_expression "(in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555" (parenthesized_expression "(in_RCX[0x2d] - in_RCX[0x2c] >> 3)" (( "(") (binary_expression "in_RCX[0x2d] - in_RCX[0x2c] >> 3" (binary_expression "in_RCX[0x2d] - in_RCX[0x2c]" (subscript_expression "in_RCX[0x2d]" (identifier "in_RCX") ([ "[") (number_literal "0x2d") (] "]")) (- "-") (subscript_expression "in_RCX[0x2c]" (identifier "in_RCX") ([ "[") (number_literal "0x2c") (] "]"))) (>> ">>") (number_literal "3")) () ")")) (* "*") (number_literal "-0x5555555555555555")) () ")"))) (<= "<=") (identifier "uVar9")) () ")")) (compound_statement "{\n                    \n            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n          }" ({ "{") (expression_statement "FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");" (call_expression "FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry")" (identifier "FUN_00352af0") (argument_list "("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry")" (( "(") (string_literal ""../../gold/object.h"" (" """) (string_content "../../gold/object.h") (" """)) (, ",") (number_literal "0x8e3") (, ",") (string_literal ""set_must_have_output_symtab_entry"" (" """) (string_content "set_must_have_output_symtab_entry") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);" (assignment_expression "piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18)" (identifier "piVar1") (= "=") (cast_expression "(int *)(in_RCX[0x2c] + uVar9 * 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_RCX[0x2c] + uVar9 * 0x18)" (( "(") (binary_expression "in_RCX[0x2c] + uVar9 * 0x18" (subscript_expression "in_RCX[0x2c]" (identifier "in_RCX") ([ "[") (number_literal "0x2c") (] "]")) (+ "+") (binary_expression "uVar9 * 0x18" (identifier "uVar9") (* "*") (number_literal "0x18"))) () ")")))) (; ";")) (expression_statement "iVar3 = *piVar1;" (assignment_expression "iVar3 = *piVar1" (identifier "iVar3") (= "=") (pointer_expression "*piVar1" (* "*") (identifier "piVar1"))) (; ";")) (if_statement "if ((iVar3 != 0) && (iVar3 != -2)) {\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }" (if "if") (parenthesized_expression "((iVar3 != 0) && (iVar3 != -2))" (( "(") (binary_expression "(iVar3 != 0) && (iVar3 != -2)" (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar3 != -2)" (( "(") (binary_expression "iVar3 != -2" (identifier "iVar3") (!= "!=") (number_literal "-2")) () ")"))) () ")")) (compound_statement "{\n                    \n            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n          }" ({ "{") (expression_statement "FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");" (call_expression "FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry")" (identifier "FUN_00352af0") (argument_list "("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry")" (( "(") (string_literal ""../../gold/object.h"" (" """) (string_content "../../gold/object.h") (" """)) (, ",") (number_literal "0x71f") (, ",") (string_literal ""set_must_have_output_symtab_entry"" (" """) (string_content "set_must_have_output_symtab_entry") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "*piVar1 = -2;" (assignment_expression "*piVar1 = -2" (pointer_expression "*piVar1" (* "*") (identifier "piVar1")) (= "=") (number_literal "-2")) (; ";")) (expression_statement "local_39[0] = 0;" (assignment_expression "local_39[0] = 0" (subscript_expression "local_39[0]" (identifier "local_39") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" (identifier "FUN_001a5c60") (argument_list "(in_stack_00000038,local_39)" (( "(") (identifier "in_stack_00000038") (, ",") (identifier "local_39") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }" (else "else") (compound_statement "{\n        local_39[0] = 0;\n        FUN_001a5c60(in_stack_00000038,local_39);\n      }" ({ "{") (expression_statement "local_39[0] = 0;" (assignment_expression "local_39[0] = 0" (subscript_expression "local_39[0]" (identifier "local_39") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_001a5c60(in_stack_00000038,local_39);" (call_expression "FUN_001a5c60(in_stack_00000038,local_39)" (identifier "FUN_001a5c60") (argument_list "(in_stack_00000038,local_39)" (( "(") (identifier "in_stack_00000038") (, ",") (identifier "local_39") () ")"))) (; ";")) (} "}")))) (expression_statement "*(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;" (assignment_expression "*(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1" (pointer_expression "*(long *)(in_stack_00000038 + 0x18)" (* "*") (cast_expression "(long *)(in_stack_00000038 + 0x18)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_stack_00000038 + 0x18)" (( "(") (binary_expression "in_stack_00000038 + 0x18" (identifier "in_stack_00000038") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (binary_expression "*(long *)(in_stack_00000038 + 0x18) + 1" (pointer_expression "*(long *)(in_stack_00000038 + 0x18)" (* "*") (cast_expression "(long *)(in_stack_00000038 + 0x18)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_stack_00000038 + 0x18)" (( "(") (binary_expression "in_stack_00000038 + 0x18" (identifier "in_stack_00000038") (+ "+") (number_literal "0x18")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "lVar8 = lVar8 + 1;" (assignment_expression "lVar8 = lVar8 + 1" (identifier "lVar8") (= "=") (binary_expression "lVar8 + 1" (identifier "lVar8") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "in_stack_00000008 = in_stack_00000008 + 3;" (assignment_expression "in_stack_00000008 = in_stack_00000008 + 3" (identifier "in_stack_00000008") (= "=") (binary_expression "in_stack_00000008 + 3" (identifier "in_stack_00000008") (+ "+") (number_literal "3"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(in_stack_00000010 != lVar8)" (( "(") (binary_expression "in_stack_00000010 != lVar8" (identifier "in_stack_00000010") (!= "!=") (identifier "lVar8")) () ")")) (; ";")) (} "}"))) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* WARNING: Enum "DT": Some values do not have unique names */
/* DWARF original prototype: void emit_relocs_scan(Target_aarch64<64,_false> * this, Symbol_table *
   symtab, Layout * layout, Sized_relobj_file<64,_false> * object, uint data_shndx, uint sh_type,
   uchar * prelocs, size_t reloc_count, Output_section * output_section, bool
   needs_special_offset_handling, size_t local_symbol_count, uchar * plocal_syms, Relocatable_relocs
   * rr) */

void __thiscall
anon_unknown.dwarf_12235f4::Target_aarch64<64,_false>::emit_relocs_scan
          (Target_aarch64<64,_false> *this,Symbol_table *symtab,Layout *layout,
          Sized_relobj_file<64,_false> *object,type_1 data_shndx,type_1 var_1,type_7 *prelocs,
          size_t var_3,type_8 *output_section,bool var_4,
          size_t var_10,type_7 *var_11,Relocatable_relocs *rr)

{
  type_11 var_13;
  type_1 var_12;
  type_2 *p_Var3;
  type_3 ppOVar4;
  type_3 var_21;
  bool bVar6;
  type_1 uVar7;
  int iVar8;
  type_4 var_17;
  type_5 extraout_var;
  type_6 *var_18;
  size_t var_6;
  type_4 var_9;
  type_7 local_39 [9];
  type_8 *pOVar10;
  type_5 extraout_var_00;
  
  if (var_1 != 4) {
                    /* WARNING: Subroutine does not return */
    gold::var_2("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");
  }
  if (var_3 != 0) {
    var_6 = 0;
    do {
      while ((var_4 &&
             (bVar6 = var_14::type_8::var_5
                                (output_section,(type_9 *)object,data_shndx,*(type_10 *)prelocs),
             !bVar6))) {
LAB_002fa218:
        local_39[0] = '\b';
        var_6 = var_6 + 1;
        std::vector<var_8,var_15::allocator<var_8>var_16>::var_7<var_8>
                  (&rr->reloc_strategies_,local_39);
        prelocs = (type_7 *)((long)prelocs + 0x18);
        if (var_3 == var_6) {
          return;
        }
      }
      var_12 = *(type_1 *)((long)prelocs + 0xc);
      var_9 = (type_4)var_12;
      if (var_9 < var_10) {
        if (var_11 == (type_7 *)0x0) {
                    /* WARNING: Subroutine does not return */
          gold::var_2("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");
        }
        var_13 = *(type_11 *)(var_11 + (type_4)(var_12 * 0x18) + 6);
        var_17 = (type_4)var_13;
        if (var_13 < 0xff00) {
LAB_002fa2ce:
          if ((int)var_17 != 0) {
            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                      super__Vector_base<var_14::type_8*,var_15::allocator<var_14::type_8*>var_16>
                      ._M_impl._M_start;
            if ((type_4)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                              super__Vector_base<var_14::type_8*,var_15::allocator<var_14::type_8*>var_16>
                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= var_17) {
                    /* WARNING: Subroutine does not return */
              gold::var_2("../../gold/object.h",0x50b,"is_section_included");
            }
            if (ppOVar4[var_17] == (type_8 *)0x0) goto LAB_002fa218;
          }
        }
        else if (var_13 == 0xffff) {
          var_18 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_;
          if (var_18 == (type_6 *)0x0) {
            iVar8 = (*(object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object
                      [0x1b])(object);
            var_18 = (type_6 *)var_19(extraout_var_00,iVar8);
            (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object.xindex_ = var_18;
          }
          uVar7 = var_14::Xindex::var_20(var_18,(type_12 *)object,var_12);
          var_17 = (type_4)uVar7;
          goto LAB_002fa2ce;
        }
        if ((var_11[(type_4)(var_12 * 0x18) + 4] & 0xf) == 3) {
          p_Var3 = (object->super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object
                   [0x18];
          if (p_Var3 == var_14::type_9::do_output_section) {
            ppOVar4 = (object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                      super__Vector_base<var_14::type_8*,var_15::allocator<var_14::type_8*>var_16>
                      ._M_impl._M_start;
            if ((type_4)((long)(object->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                              super__Vector_base<var_14::type_8*,var_15::allocator<var_14::type_8*>var_16>
                              ._M_impl._M_finish - (long)ppOVar4 >> 3) <= var_17) {
                    /* WARNING: Subroutine does not return */
              gold::var_2("../../gold/object.h",0x5c8,"do_output_section");
            }
            pOVar10 = ppOVar4[var_17];
          }
          else {
            iVar8 = (*p_Var3)(object,var_17);
            pOVar10 = (type_8 *)var_19(extraout_var,iVar8);
          }
          pOVar10->field_0xc8 = pOVar10->field_0xc8 | 1;
          local_39[0] = '\x01';
          std::vector<var_8,var_15::allocator<var_8>var_16>::var_7<var_8>
                    (&rr->reloc_strategies_,local_39);
        }
        else {
          var_21 = (object->local_values_).
                   super__Vector_base<var_14::Symbol_value<64>,var_15::allocator<var_14::Symbol_value<64>var_16>var_16>
                   ._M_impl._M_start;
          if ((type_4)(((long)(object->local_values_).
                             super__Vector_base<var_14::Symbol_value<64>,var_15::allocator<var_14::Symbol_value<64>var_16>var_16>
                             ._M_impl._M_finish - (long)var_21 >> 3) * -0x5555555555555555) <=
              var_9) {
                    /* WARNING: Subroutine does not return */
            gold::var_2
                      ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");
          }
          var_21 = var_21 + var_9;
          var_12 = var_21->output_symtab_index_;
          if ((var_12 != 0) && (var_12 != 0xfffffffe)) {
                    /* WARNING: Subroutine does not return */
            gold::var_2
                      ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");
          }
          var_21->output_symtab_index_ = 0xfffffffe;
          local_39[0] = '\0';
          std::vector<var_8,var_15::allocator<var_8>var_16>::var_7<var_8>
                    (&rr->reloc_strategies_,local_39);
        }
      }
      else {
        local_39[0] = '\0';
        std::vector<var_8,var_15::allocator<var_8>var_16>::var_7<var_8>
                  (&rr->reloc_strategies_,local_39);
      }
      rr->output_reloc_count_ = rr->output_reloc_count_ + 1;
      var_6 = var_6 + 1;
      prelocs = (type_7 *)((long)prelocs + 0x18);
    } while (var_3 != var_6);
  }
  return;
}


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

void MASKED(void)

{
  int *piVar1;
  ushort uVar2;
  int iVar3;
  char cVar4;
  uint uVar5;
  long lVar6;
  long *in_RCX;
  long lVar7;
  undefined4 in_R8D;
  int in_R9D;
  long lVar8;
  ulong uVar9;
  undefined8 *in_stack_00000008;
  long in_stack_00000010;
  undefined8 in_stack_00000018;
  char in_stack_00000020;
  ulong in_stack_00000028;
  long in_stack_00000030;
  long in_stack_00000038;
  undefined1 local_39 [9];
  
  if (in_R9D != 4) {
                    /* WARNING: Subroutine does not return */
    FUN_00352af0("../../gold/aarch64.cc",0x202f,"emit_relocs_scan");
  }
  if (in_stack_00000010 != 0) {
    lVar8 = 0;
    do {
      while ((in_stack_00000020 != '\0' &&
             (cVar4 = FUN_003cfe70(in_stack_00000018,in_RCX,in_R8D,*in_stack_00000008),
             cVar4 == '\0'))) {
LAB_002fa218:
        local_39[0] = 8;
        lVar8 = lVar8 + 1;
        FUN_001a5c60(in_stack_00000038,local_39);
        in_stack_00000008 = in_stack_00000008 + 3;
        if (in_stack_00000010 == lVar8) {
          return;
        }
      }
      uVar9 = (ulong)*(uint *)((long)in_stack_00000008 + 0xc);
      if (uVar9 < in_stack_00000028) {
        if (in_stack_00000030 == 0) {
                    /* WARNING: Subroutine does not return */
          FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");
        }
        lVar7 = (ulong)(*(uint *)((long)in_stack_00000008 + 0xc) * 0x18) + in_stack_00000030;
        uVar2 = *(ushort *)(lVar7 + 6);
        uVar5 = (uint)uVar2;
        if (uVar2 < 0xff00) {
LAB_002fa2ce:
          if (uVar5 != 0) {
            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");
            }
            if (*(long *)(in_RCX[10] + (ulong)uVar5 * 8) == 0) goto LAB_002fa218;
          }
        }
        else if (uVar2 == 0xffff) {
          lVar6 = in_RCX[8];
          if (lVar6 == 0) {
            lVar6 = (**(code **)(*in_RCX + 0xd8))(in_RCX);
            in_RCX[8] = lVar6;
          }
          uVar5 = FUN_00392c60(lVar6,in_RCX,uVar9);
          goto LAB_002fa2ce;
        }
        if ((*(byte *)(lVar7 + 4) & 0xf) == 3) {
          if (*(code **)(*in_RCX + 0xc0) == FUN_001a5070) {
            if ((ulong)(in_RCX[0xb] - in_RCX[10] >> 3) <= (ulong)uVar5) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");
            }
            lVar7 = *(long *)(in_RCX[10] + (ulong)uVar5 * 8);
          }
          else {
            lVar7 = (**(code **)(*in_RCX + 0xc0))(in_RCX,uVar5);
          }
          *(byte *)(lVar7 + 200) = *(byte *)(lVar7 + 200) | 1;
          local_39[0] = 1;
          FUN_001a5c60(in_stack_00000038,local_39);
        }
        else {
          if ((ulong)((in_RCX[0x2d] - in_RCX[0x2c] >> 3) * -0x5555555555555555) <= uVar9) {
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");
          }
          piVar1 = (int *)(in_RCX[0x2c] + uVar9 * 0x18);
          iVar3 = *piVar1;
          if ((iVar3 != 0) && (iVar3 != -2)) {
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");
          }
          *piVar1 = -2;
          local_39[0] = 0;
          FUN_001a5c60(in_stack_00000038,local_39);
        }
      }
      else {
        local_39[0] = 0;
        FUN_001a5c60(in_stack_00000038,local_39);
      }
      *(long *)(in_stack_00000038 + 0x18) = *(long *)(in_stack_00000038 + 0x18) + 1;
      lVar8 = lVar8 + 1;
      in_stack_00000008 = in_stack_00000008 + 3;
    } while (in_stack_00000010 != lVar8);
  }
  return;
}

