
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Struct "Arm_input_section<false>": ignoring overlapping field "original_addralign_" */
/* WARNING: Enum "<anon>": Some values do not have unique names */
/* WARNING: Enum "ELFOSABI": Some values do not have unique names */
/* WARNING: Struct "Arm_input_section<true>": ignoring overlapping field "original_addralign_" */
/* DWARF original prototype: void scan_relocatable_relocs(Target_arm<false> * this, Symbol_table *
   symtab, Layout * layout, Sized_relobj_file<32,_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_symbols,
   Relocatable_relocs * rr) */

void __thiscall
anon_unknown.dwarf_9b9b16::Target_arm<false>::scan_relocatable_relocs
          (Target_arm<false> *this,Symbol_table *symtab,Layout *layout,
          Sized_relobj_file<32,_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_symbols,Relocatable_relocs *rr)

{
  undefined1 *puVar1;
  byte *pbVar2;
  byte bVar3;
  ushort uVar4;
  uint uVar5;
  pointer pSVar6;
  _func_int_varargs *p_Var7;
  pointer ppOVar8;
  Target *pTVar9;
  bool bVar10;
  uint uVar11;
  int iVar12;
  undefined4 extraout_var;
  Xindex *this_00;
  uchar uVar13;
  Elf_Word EVar14;
  uint uVar15;
  uint symndx;
  size_t sVar17;
  uchar local_39 [9];
  undefined4 extraout_var_00;
  ulong uVar16;
  
  if (sh_type != 9) {
                    /* WARNING: Subroutine does not return */
    gold::do_gold_unreachable("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");
  }
  if (reloc_count != 0) {
    sVar17 = 0;
    do {
      while ((!needs_special_offset_handling ||
             (bVar10 = gold::Output_section::is_input_address_mapped
                                 (output_section,(Relobj *)object,data_shndx,
                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10))) {
        uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4);
        symndx = uVar5 >> 8;
        uVar16 = (ulong)symndx;
        if (uVar16 < param_10) {
          if (plocal_symbols == (uchar *)0x0) {
                    /* WARNING: Subroutine does not return */
            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");
          }
          uVar15 = symndx << 4;
          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);
          uVar11 = (uint)uVar4;
          if (uVar4 < 0xff00) {
LAB_0023bd7e:
            if (uVar11 == 0) goto LAB_0023bc63;
            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.
                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {
                    /* WARNING: Subroutine does not return */
              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");
            }
            if (ppOVar8[uVar11] == (Output_section *)0x0) break;
            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];
          }
          else {
            if (uVar4 == 0xffff) {
              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;
              if (this_00 == (Xindex *)0x0) {
                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.
                           _vptr_Object[0x1b])(object);
                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);
                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;
              }
              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);
              goto LAB_0023bd7e;
            }
LAB_0023bc63:
            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];
          }
          if ((bVar3 & 0xf) != 3) {
            if (symndx == 0 && (uVar5 & 0xff) == 0) break;
            pSVar6 = (object->local_values_).
                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>
                     ._M_impl._M_start;
            if ((ulong)(((long)(object->local_values_).
                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>
                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=
                uVar16) {
                    /* WARNING: Subroutine does not return */
              gold::do_gold_unreachable
                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");
            }
            pSVar6 = pSVar6 + uVar16;
            uVar5 = pSVar6->output_symtab_index_;
            if ((uVar5 != 0) && (uVar5 != 0xfffffffe)) {
                    /* WARNING: Subroutine does not return */
              gold::do_gold_unreachable
                        ("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");
            }
            pSVar6->output_symtab_index_ = 0xfffffffe;
            goto LAB_0023bcc9;
          }
          EVar14 = uVar5 & 0xff;
          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {
            pTVar9 = gold::parameters->target_;
            if (pTVar9 == (Target *)0x0) {
                    /* WARNING: Subroutine does not return */
              Target_arm<true>::default_target();
            }
            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {
                    /* WARNING: Subroutine does not return */
              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");
            }
            if (EVar14 == 0x26) {
              EVar14 = pTVar9[9].processor_specific_flags_;
            }
            else if (EVar14 == 0x29) {
              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;
            }
          }
          switch(EVar14) {
          case 0:
          case 0x28:
          case 0x5a:
          case 0x5b:
          case 0x5c:
          case 0x5d:
          case 99:
          case 100:
          case 0x65:
          case 0x81:
          case 0x82:
            uVar13 = '\x02';
            break;
          default:
            uVar13 = '\t';
            break;
          case 2:
          case 3:
          case 9:
          case 0x18:
          case 0x19:
          case 0x1a:
          case 0x1f:
          case 0x37:
          case 0x38:
          case 0x5e:
          case 0x5f:
          case 0x60:
          case 0x68:
          case 0x69:
          case 0x6a:
          case 0x6b:
          case 0x6c:
            uVar13 = '\a';
            break;
          case 0x26:
          case 0x29:
                    /* WARNING: Subroutine does not return */
            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");
          }
          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object
                   [0x18];
          if (p_Var7 == gold::Relobj::do_output_section) {
            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.
                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {
                    /* WARNING: Subroutine does not return */
              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");
            }
            puVar1 = &ppOVar8[uVar11]->field_0xc8;
            *puVar1 = *puVar1 | 1;
          }
          else {
            iVar12 = (*p_Var7)(object,(ulong)uVar11);
            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);
            *pbVar2 = *pbVar2 | 1;
          }
          local_39[0] = uVar13;
          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>
                    (&rr->reloc_strategies_,local_39);
          if (uVar13 != '\b') goto LAB_0023bcd9;
        }
        else {
LAB_0023bcc9:
          local_39[0] = '\0';
          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>
                    (&rr->reloc_strategies_,local_39);
LAB_0023bcd9:
          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;
        }
        sVar17 = sVar17 + 1;
        if (reloc_count == sVar17) {
          return;
        }
      }
      local_39[0] = '\b';
      sVar17 = sVar17 + 1;
      std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>
                (&rr->reloc_strategies_,local_39);
    } while (reloc_count != sVar17);
  }
  return;
}



void FUN_0023bbb0(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,
                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,
                 long param_12,ulong param_13)

{
  byte *pbVar1;
  int *piVar2;
  byte bVar3;
  ushort uVar4;
  int iVar5;
  long *plVar6;
  char cVar7;
  uint uVar8;
  long *plVar9;
  uint uVar10;
  long lVar11;
  uint uVar12;
  long lVar14;
  char local_39 [9];
  ulong uVar13;
  
  if (param_6 != 9) {
                    /* WARNING: Subroutine does not return */
    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");
  }
  if (param_8 != 0) {
    lVar14 = 0;
    do {
      while ((param_10 == '\0' ||
             (param_2 = param_4, param_1 = param_9,
             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),
             cVar7 != '\0'))) {
        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);
        uVar12 = uVar10 >> 8;
        uVar13 = (ulong)uVar12;
        if (uVar13 < param_11) {
          if (param_12 == 0) {
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");
          }
          lVar11 = (ulong)(uVar12 << 4) + param_12;
          uVar4 = *(ushort *)(lVar11 + 0xe);
          uVar8 = (uint)uVar4;
          if (uVar4 < 0xff00) {
LAB_0023bd7e:
            if (uVar8 == 0) goto LAB_0023bc63;
            param_2 = (long *)param_4[10];
            param_1 = (ulong)uVar8;
            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");
            }
            if (param_2[param_1] == 0) break;
            bVar3 = *(byte *)(lVar11 + 0xc);
          }
          else {
            if (uVar4 == 0xffff) {
              param_1 = param_4[8];
              if (param_1 == 0) {
                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);
                param_4[8] = param_1;
              }
              param_2 = param_4;
              uVar8 = FUN_00392c60(param_1,param_4,uVar12);
              goto LAB_0023bd7e;
            }
LAB_0023bc63:
            bVar3 = *(byte *)(lVar11 + 0xc);
          }
          if ((bVar3 & 0xf) != 3) {
            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;
            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");
            }
            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);
            iVar5 = *piVar2;
            if ((iVar5 != 0) && (iVar5 != -2)) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");
            }
            *piVar2 = -2;
            goto LAB_0023bcc9;
          }
          uVar10 = uVar10 & 0xff;
          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {
            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);
            if (lVar11 == 0) {
              FUN_00232220();
              if (*(long *)(param_1 + 0x88) == 0) {
                    /* WARNING: Subroutine does not return */
                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");
              }
              if (*(long *)(param_1 + 0x20) == 0) {
                    /* WARNING: Subroutine does not return */
                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");
              }
              plVar9 = (long *)param_2[1];
              plVar6 = (long *)param_2[2];
              if (plVar9 == plVar6) {
                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);
                plVar9 = (long *)param_2[1];
                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;
              }
              else {
                *plVar9 = *(long *)(param_1 + 0x20);
                plVar9 = plVar9 + 1;
                param_2[1] = (long)plVar9;
                if (plVar9 == plVar6) {
LAB_0023c049:
                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);
                  return;
                }
              }
              *plVar9 = *(long *)(param_1 + 0x88);
              param_2[1] = (long)(plVar9 + 1);
              return;
            }
            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||
               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");
            }
            if (uVar10 == 0x26) {
              uVar10 = *(uint *)(lVar11 + 0x130);
            }
            else if (uVar10 == 0x29) {
              uVar10 = *(uint *)(lVar11 + 0x134);
            }
          }
          switch(uVar10) {
          case 0:
          case 0x28:
          case 0x5a:
          case 0x5b:
          case 0x5c:
          case 0x5d:
          case 99:
          case 100:
          case 0x65:
          case 0x81:
          case 0x82:
            cVar7 = '\x02';
            break;
          default:
            cVar7 = '\t';
            break;
          case 2:
          case 3:
          case 9:
          case 0x18:
          case 0x19:
          case 0x1a:
          case 0x1f:
          case 0x37:
          case 0x38:
          case 0x5e:
          case 0x5f:
          case 0x60:
          case 0x68:
          case 0x69:
          case 0x6a:
          case 0x6b:
          case 0x6c:
            cVar7 = '\a';
            break;
          case 0x26:
          case 0x29:
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");
          }
          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {
            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");
            }
            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);
            *pbVar1 = *pbVar1 | 1;
          }
          else {
            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);
            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;
          }
          param_2 = (long *)local_39;
          param_1 = param_13;
          local_39[0] = cVar7;
          FUN_001a5c60();
          if (cVar7 != '\b') goto LAB_0023bcd9;
        }
        else {
LAB_0023bcc9:
          local_39[0] = '\0';
          param_2 = (long *)local_39;
          param_1 = param_13;
          FUN_001a5c60();
LAB_0023bcd9:
          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;
        }
        lVar14 = lVar14 + 1;
        if (param_8 == lVar14) {
          return;
        }
      }
      local_39[0] = '\b';
      lVar14 = lVar14 + 1;
      param_2 = (long *)local_39;
      param_1 = param_13;
      FUN_001a5c60();
    } while (param_8 != lVar14);
  }
  return;
}


PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x38
MOVZX EAX,byte ptr [RSP + 0x88]
MOV dword ptr [RSP + 0x4],R8D
MOV R12,qword ptr [RSP + 0xa0]
MOV byte ptr [RSP + 0xb],AL
CMP R9D,0x9
JNZ 0x0023bf83
CMP qword ptr [RSP + 0x78],0x0
JZ 0x0023bd35
MOV RBP,RCX
XOR R14D,R14D
LEA R13,[RSP + 0x2f]
LEA R15,[0x54e1dc]
JMP 0x0023bcea
MOV RAX,qword ptr [RSP + 0x70]
MOV EBX,dword ptr [RAX + R14*0x8 + 0x4]
MOV R9D,EBX
SHR R9D,0x8
MOV ECX,R9D
CMP qword ptr [RSP + 0x90],RCX
JBE 0x0023bcc9
CMP qword ptr [RSP + 0x98],0x0
JZ 0x0023bf23
MOV R8D,R9D
SHL R8D,0x4
ADD R8,qword ptr [RSP + 0x98]
MOVZX EAX,word ptr [R8 + 0xe]
CMP EAX,0xfeff
JBE 0x0023bd7e
CMP EAX,0xffff
JZ 0x0023bd48
MOVZX EDX,byte ptr [R8 + 0xc]
MOVZX EBX,BL
AND EDX,0xf
CMP DL,0x3
JZ 0x0023bdc0
OR R9D,EBX
JZ 0x0023bd1a
MOV RDX,qword ptr [RBP + 0x160]
MOV RAX,qword ptr [RBP + 0x168]
MOV RSI,-0x5555555555555555
SUB RAX,RDX
SAR RAX,0x3
IMUL RAX,RSI
CMP RCX,RAX
JNC 0x0023bf3b
LEA RAX,[RCX + RCX*0x2]
LEA RAX,[RDX + RAX*0x8]
MOV EDX,dword ptr [RAX]
TEST EDX,EDX
JZ 0x0023bcc3
CMP EDX,-0x2
JNZ 0x0023bf53
MOV dword ptr [RAX],0xfffffffe
MOV RSI,R13
MOV RDI,R12
MOV byte ptr [RSP + 0x2f],0x0
CALL 0x001a5c60
ADD qword ptr [R12 + 0x18],0x1
ADD R14,0x1
CMP qword ptr [RSP + 0x78],R14
JZ 0x0023bd35
CMP byte ptr [RSP + 0xb],0x0
JZ 0x0023bc08
MOV RAX,qword ptr [RSP + 0x70]
MOV EDX,dword ptr [RSP + 0x4]
MOV RSI,RBP
MOV RDI,qword ptr [RSP + 0x80]
MOV ECX,dword ptr [RAX + R14*0x8]
CALL 0x003cfe70
TEST AL,AL
JNZ 0x0023bc08
MOV RSI,R13
MOV RDI,R12
MOV byte ptr [RSP + 0x2f],0x8
ADD R14,0x1
CALL 0x001a5c60
CMP qword ptr [RSP + 0x78],R14
JNZ 0x0023bcea
ADD RSP,0x38
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
MOV RDI,qword ptr [RBP + 0x40]
TEST RDI,RDI
JZ 0x0023bec8
MOV EDX,R9D
MOV RSI,RBP
MOV qword ptr [RSP + 0x18],R8
MOV qword ptr [RSP + 0x10],RCX
MOV dword ptr [RSP + 0xc],R9D
CALL 0x00392c60
MOV R8,qword ptr [RSP + 0x18]
MOV RCX,qword ptr [RSP + 0x10]
MOV R9D,dword ptr [RSP + 0xc]
TEST EAX,EAX
JZ 0x0023bc63
MOV RSI,qword ptr [RBP + 0x50]
MOV RDX,qword ptr [RBP + 0x58]
MOV EDI,EAX
SUB RDX,RSI
SAR RDX,0x3
CMP RDI,RDX
JNC 0x0023bf6b
CMP qword ptr [RSI + RDI*0x8],0x0
JZ 0x0023bd1a
MOVZX EDX,byte ptr [R8 + 0xc]
MOVZX EBX,BL
AND EDX,0xf
CMP DL,0x3
JNZ 0x0023bc77
NOP
CMP EBX,0x26
JZ 0x0023be80
CMP EBX,0x29
JZ 0x0023be80
CMP EBX,0x82
JA 0x0023be60
MOVSXD RDX,dword ptr [R15 + RBX*0x4]
ADD RDX,R15
JMP RDX
MOV EBX,0x7
MOV RDX,qword ptr [RBP]
LEA RSI,[0x1a5070]
MOV RDX,qword ptr [RDX + 0xc0]
CMP RDX,RSI
JNZ 0x0023be70
MOV RCX,qword ptr [RBP + 0x50]
MOV RDX,qword ptr [RBP + 0x58]
MOV EAX,EAX
SUB RDX,RCX
SAR RDX,0x3
CMP RAX,RDX
JNC 0x0023bf9b
MOV RAX,qword ptr [RCX + RAX*0x8]
OR byte ptr [RAX + 0xc8],0x1
MOV RSI,R13
MOV RDI,R12
MOV byte ptr [RSP + 0x2f],BL
CALL 0x001a5c60
CMP EBX,0x8
JNZ 0x0023bcd9
JMP 0x0023bcdf
MOV EBX,0x2
JMP 0x0023bdf5
MOV EBX,0x9
JMP 0x0023bdf5
MOV ESI,EAX
MOV RDI,RBP
CALL RDX
OR byte ptr [RAX + 0xc8],0x1
JMP 0x0023be31
MOV RDX,qword ptr [0x0067cb08]
MOV RDX,qword ptr [RDX + 0x18]
TEST RDX,RDX
JZ 0x0023bfcb
MOV RCX,qword ptr [RDX + 0x8]
CMP dword ptr [RCX + 0x8],0x28
JNZ 0x0023bfb3
CMP byte ptr [RCX + 0x4],0x0
JNZ 0x0023bfb3
CMP EBX,0x26
JZ 0x0023bf00
CMP EBX,0x29
JNZ 0x0023bdd2
MOV EBX,dword ptr [RDX + 0x134]
JMP 0x0023bdd2
MOV RAX,qword ptr [RBP]
MOV qword ptr [RSP + 0x18],R8
MOV RDI,RBP
MOV qword ptr [RSP + 0x10],RCX
MOV dword ptr [RSP + 0xc],R9D
CALL qword ptr [RAX + 0xd8]
MOV R8,qword ptr [RSP + 0x18]
MOV RCX,qword ptr [RSP + 0x10]
MOV RDI,RAX
MOV qword ptr [RBP + 0x40],RAX
MOV R9D,dword ptr [RSP + 0xc]
JMP 0x0023bd55
MOV EBX,dword ptr [RDX + 0x130]
JMP 0x0023bdd2
LEA RDX,[0x54fb80]
MOV ESI,0x824
LEA RDI,[0x54dce6]
CALL 0x00352af0
LEA RDX,[0x54fba0]
MOV ESI,0x2e4
LEA RDI,[0x5334ee]
CALL 0x00352af0
LEA RDX,[0x54fbe0]
MOV ESI,0x8e3
LEA RDI,[0x5333ac]
CALL 0x00352af0
LEA RDX,[0x550e60]
MOV ESI,0x71f
LEA RDI,[0x5333ac]
CALL 0x00352af0
LEA RDX,[0x550ed0]
MOV ESI,0x50b
LEA RDI,[0x5333ac]
CALL 0x00352af0
LEA RDX,[0x54fbc0]
MOV ESI,0x2873
LEA RDI,[0x54dce6]
CALL 0x00352af0
LEA RDX,[0x551120]
MOV ESI,0x5c8
LEA RDI,[0x5333ac]
CALL 0x00352af0
LEA RDX,[0x551040]
MOV ESI,0x988
LEA RDI,[0x54dce6]
CALL 0x00352af0
CALL 0x00232220
(translation_unit "void FUN_0023bbb0(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,\n                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,\n                 long param_12,ulong param_13)\n\n{\n  byte *pbVar1;\n  int *piVar2;\n  byte bVar3;\n  ushort uVar4;\n  int iVar5;\n  long *plVar6;\n  char cVar7;\n  uint uVar8;\n  long *plVar9;\n  uint uVar10;\n  long lVar11;\n  uint uVar12;\n  long lVar14;\n  char local_39 [9];\n  ulong uVar13;\n  \n  if (param_6 != 9) {\n                    /* WARNING: Subroutine does not return */\n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }\n  if (param_8 != 0) {\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }\n  return;\n}\n\n" (function_definition "void FUN_0023bbb0(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,\n                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,\n                 long param_12,ulong param_13)\n\n{\n  byte *pbVar1;\n  int *piVar2;\n  byte bVar3;\n  ushort uVar4;\n  int iVar5;\n  long *plVar6;\n  char cVar7;\n  uint uVar8;\n  long *plVar9;\n  uint uVar10;\n  long lVar11;\n  uint uVar12;\n  long lVar14;\n  char local_39 [9];\n  ulong uVar13;\n  \n  if (param_6 != 9) {\n                    /* WARNING: Subroutine does not return */\n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }\n  if (param_8 != 0) {\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }\n  return;\n}" primitive_type (function_declarator "FUN_0023bbb0(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,\n                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,\n                 long param_12,ulong param_13)" identifier (parameter_list "(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,\n                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,\n                 long param_12,ulong param_13)" ( (parameter_declaration "ulong param_1" type_identifier identifier) , (parameter_declaration "long *param_2" (sized_type_specifier "long" long) (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined8 param_3" type_identifier identifier) , (parameter_declaration "long *param_4" (sized_type_specifier "long" long) (pointer_declarator "*param_4" * identifier)) , (parameter_declaration "undefined4 param_5" type_identifier identifier) , (parameter_declaration "int param_6" primitive_type identifier) , (parameter_declaration "long param_7" (sized_type_specifier "long" long) identifier) , (parameter_declaration "long param_8" (sized_type_specifier "long" long) identifier) , (parameter_declaration "ulong param_9" type_identifier identifier) , (parameter_declaration "char param_10" primitive_type identifier) , (parameter_declaration "ulong param_11" type_identifier identifier) , (parameter_declaration "long param_12" (sized_type_specifier "long" long) identifier) , (parameter_declaration "ulong param_13" type_identifier identifier) ))) (compound_statement "{\n  byte *pbVar1;\n  int *piVar2;\n  byte bVar3;\n  ushort uVar4;\n  int iVar5;\n  long *plVar6;\n  char cVar7;\n  uint uVar8;\n  long *plVar9;\n  uint uVar10;\n  long lVar11;\n  uint uVar12;\n  long lVar14;\n  char local_39 [9];\n  ulong uVar13;\n  \n  if (param_6 != 9) {\n                    /* WARNING: Subroutine does not return */\n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }\n  if (param_8 != 0) {\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }\n  return;\n}" { (declaration "byte *pbVar1;" type_identifier (pointer_declarator "*pbVar1" * identifier) ;) (declaration "int *piVar2;" primitive_type (pointer_declarator "*piVar2" * identifier) ;) (declaration "byte bVar3;" type_identifier identifier ;) (declaration "ushort uVar4;" type_identifier identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "long *plVar6;" (sized_type_specifier "long" long) (pointer_declarator "*plVar6" * identifier) ;) (declaration "char cVar7;" primitive_type identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "long *plVar9;" (sized_type_specifier "long" long) (pointer_declarator "*plVar9" * identifier) ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "long lVar11;" (sized_type_specifier "long" long) identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "long lVar14;" (sized_type_specifier "long" long) identifier ;) (declaration "char local_39 [9];" primitive_type (array_declarator "local_39 [9]" identifier [ number_literal ]) ;) (declaration "ulong uVar13;" type_identifier identifier ;) (if_statement "if (param_6 != 9) {\n                    /* WARNING: Subroutine does not return */\n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }" if (parenthesized_expression "(param_6 != 9)" ( (binary_expression "param_6 != 9" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }" { comment (expression_statement "FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");" (call_expression "FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs")" identifier (argument_list "("../../gold/arm.cc",0x2873,"scan_relocatable_relocs")" ( (string_literal ""../../gold/arm.cc"" " string_content ") , number_literal , (string_literal ""scan_relocatable_relocs"" " string_content ") ))) ;) })) (if_statement "if (param_8 != 0) {\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }" if (parenthesized_expression "(param_8 != 0)" ( (binary_expression "param_8 != 0" identifier != number_literal) )) (compound_statement "{\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }" { (expression_statement "lVar14 = 0;" (assignment_expression "lVar14 = 0" identifier = number_literal) ;) (do_statement "do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);" do (compound_statement "{\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    }" { (while_statement "while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }" while (parenthesized_expression "((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0')))" ( (parenthesized_expression "(param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))" ( (binary_expression "param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0')" (binary_expression "param_10 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) || (parenthesized_expression "(param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0')" ( (comma_expression "param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'" (assignment_expression "param_2 = param_4" identifier = identifier) , (comma_expression "param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'" (assignment_expression "param_1 = param_9" identifier = identifier) , (comma_expression "cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'" (assignment_expression "cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8))" identifier = (call_expression "FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8))" identifier (argument_list "(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8))" ( identifier , identifier , identifier , (pointer_expression "*(undefined4 *)(param_7 + lVar14 * 8)" * (cast_expression "(undefined4 *)(param_7 + lVar14 * 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_7 + lVar14 * 8)" ( (binary_expression "param_7 + lVar14 * 8" identifier + (binary_expression "lVar14 * 8" identifier * number_literal)) )))) )))) , (binary_expression "cVar7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))))) ))) )) )) (compound_statement "{\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }" { (expression_statement "uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);" (assignment_expression "uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8)" identifier = (pointer_expression "*(uint *)(param_7 + 4 + lVar14 * 8)" * (cast_expression "(uint *)(param_7 + 4 + lVar14 * 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_7 + 4 + lVar14 * 8)" ( (binary_expression "param_7 + 4 + lVar14 * 8" (binary_expression "param_7 + 4" identifier + number_literal) + (binary_expression "lVar14 * 8" identifier * number_literal)) ))))) ;) (expression_statement "uVar12 = uVar10 >> 8;" (assignment_expression "uVar12 = uVar10 >> 8" identifier = (binary_expression "uVar10 >> 8" identifier >> number_literal)) ;) (expression_statement "uVar13 = (ulong)uVar12;" (assignment_expression "uVar13 = (ulong)uVar12" identifier = (cast_expression "(ulong)uVar12" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (if_statement "if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }" if (parenthesized_expression "(uVar13 < param_11)" ( (binary_expression "uVar13 < param_11" identifier < identifier) )) (compound_statement "{\n          if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }" { (if_statement "if (param_12 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }" if (parenthesized_expression "(param_12 == 0)" ( (binary_expression "param_12 == 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 "lVar11 = (ulong)(uVar12 << 4) + param_12;" (assignment_expression "lVar11 = (ulong)(uVar12 << 4) + param_12" identifier = (binary_expression "(ulong)(uVar12 << 4) + param_12" (call_expression "(ulong)(uVar12 << 4)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 << 4)" ( (binary_expression "uVar12 << 4" identifier << number_literal) ))) + identifier)) ;) (expression_statement "uVar4 = *(ushort *)(lVar11 + 0xe);" (assignment_expression "uVar4 = *(ushort *)(lVar11 + 0xe)" identifier = (pointer_expression "*(ushort *)(lVar11 + 0xe)" * (cast_expression "(ushort *)(lVar11 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 0xe)" ( (binary_expression "lVar11 + 0xe" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = (uint)uVar4;" (assignment_expression "uVar8 = (uint)uVar4" identifier = (cast_expression "(uint)uVar4" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" if (parenthesized_expression "(uVar4 < 0xff00)" ( (binary_expression "uVar4 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" { (labeled_statement "LAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;" statement_identifier : (if_statement "if (uVar8 == 0) goto LAB_0023bc63;" if (parenthesized_expression "(uVar8 == 0)" ( (binary_expression "uVar8 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0023bc63;" goto statement_identifier ;))) (expression_statement "param_2 = (long *)param_4[10];" (assignment_expression "param_2 = (long *)param_4[10]" identifier = (cast_expression "(long *)param_4[10]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_4[10]" identifier [ number_literal ]))) ;) (expression_statement "param_1 = (ulong)uVar8;" (assignment_expression "param_1 = (ulong)uVar8" identifier = (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (if_statement "if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }" if (parenthesized_expression "((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1)" ( (binary_expression "(ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1" (call_expression "(ulong)(param_4[0xb] - (long)param_2 >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(param_4[0xb] - (long)param_2 >> 3)" ( (binary_expression "param_4[0xb] - (long)param_2 >> 3" (binary_expression "param_4[0xb] - (long)param_2" (subscript_expression "param_4[0xb]" identifier [ number_literal ]) - (cast_expression "(long)param_2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) >> number_literal) ))) <= 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 (param_2[param_1] == 0) break;" if (parenthesized_expression "(param_2[param_1] == 0)" ( (binary_expression "param_2[param_1] == 0" (subscript_expression "param_2[param_1]" identifier [ identifier ]) == number_literal) )) (break_statement "break;" break ;)) (expression_statement "bVar3 = *(byte *)(lVar11 + 0xc);" (assignment_expression "bVar3 = *(byte *)(lVar11 + 0xc)" identifier = (pointer_expression "*(byte *)(lVar11 + 0xc)" * (cast_expression "(byte *)(lVar11 + 0xc)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 0xc)" ( (binary_expression "lVar11 + 0xc" identifier + number_literal) ))))) ;) }) (else_clause "else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" else (compound_statement "{\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" { (if_statement "if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }" if (parenthesized_expression "(uVar4 == 0xffff)" ( (binary_expression "uVar4 == 0xffff" identifier == number_literal) )) (compound_statement "{\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }" { (expression_statement "param_1 = param_4[8];" (assignment_expression "param_1 = param_4[8]" identifier = (subscript_expression "param_4[8]" identifier [ number_literal ])) ;) (if_statement "if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }" { (expression_statement "param_1 = (**(code **)(*param_4 + 0xd8))(param_4);" (assignment_expression "param_1 = (**(code **)(*param_4 + 0xd8))(param_4)" identifier = (call_expression "(**(code **)(*param_4 + 0xd8))(param_4)" (parenthesized_expression "(**(code **)(*param_4 + 0xd8))" ( (pointer_expression "**(code **)(*param_4 + 0xd8)" * (pointer_expression "*(code **)(*param_4 + 0xd8)" * (cast_expression "(code **)(*param_4 + 0xd8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*param_4 + 0xd8)" ( (binary_expression "*param_4 + 0xd8" (pointer_expression "*param_4" * identifier) + number_literal) ))))) )) (argument_list "(param_4)" ( identifier )))) ;) (expression_statement "param_4[8] = param_1;" (assignment_expression "param_4[8] = param_1" (subscript_expression "param_4[8]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "param_2 = param_4;" (assignment_expression "param_2 = param_4" identifier = identifier) ;) (expression_statement "uVar8 = FUN_00392c60(param_1,param_4,uVar12);" (assignment_expression "uVar8 = FUN_00392c60(param_1,param_4,uVar12)" identifier = (call_expression "FUN_00392c60(param_1,param_4,uVar12)" identifier (argument_list "(param_1,param_4,uVar12)" ( identifier , identifier , identifier )))) ;) (goto_statement "goto LAB_0023bd7e;" goto statement_identifier ;) })) (labeled_statement "LAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);" statement_identifier : (expression_statement "bVar3 = *(byte *)(lVar11 + 0xc);" (assignment_expression "bVar3 = *(byte *)(lVar11 + 0xc)" identifier = (pointer_expression "*(byte *)(lVar11 + 0xc)" * (cast_expression "(byte *)(lVar11 + 0xc)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 0xc)" ( (binary_expression "lVar11 + 0xc" identifier + number_literal) ))))) ;)) }))) (if_statement "if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }" if (parenthesized_expression "((bVar3 & 0xf) != 3)" ( (binary_expression "(bVar3 & 0xf) != 3" (parenthesized_expression "(bVar3 & 0xf)" ( (binary_expression "bVar3 & 0xf" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }" { (if_statement "if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;" if (parenthesized_expression "(uVar12 == 0 && (uVar10 & 0xff) == 0)" ( (binary_expression "uVar12 == 0 && (uVar10 & 0xff) == 0" (binary_expression "uVar12 == 0" identifier == number_literal) && (binary_expression "(uVar10 & 0xff) == 0" (parenthesized_expression "(uVar10 & 0xff)" ( (binary_expression "uVar10 & 0xff" identifier & number_literal) )) == number_literal)) )) (break_statement "break;" break ;)) (if_statement "if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }" if (parenthesized_expression "((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13)" ( (binary_expression "(ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13" (call_expression "(ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555)" ( (binary_expression "(param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555" (parenthesized_expression "(param_4[0x2d] - param_4[0x2c] >> 3)" ( (binary_expression "param_4[0x2d] - param_4[0x2c] >> 3" (binary_expression "param_4[0x2d] - param_4[0x2c]" (subscript_expression "param_4[0x2d]" identifier [ number_literal ]) - (subscript_expression "param_4[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 "piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);" (assignment_expression "piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18)" identifier = (cast_expression "(int *)(param_4[0x2c] + uVar13 * 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4[0x2c] + uVar13 * 0x18)" ( (binary_expression "param_4[0x2c] + uVar13 * 0x18" (subscript_expression "param_4[0x2c]" identifier [ number_literal ]) + (binary_expression "uVar13 * 0x18" identifier * number_literal)) )))) ;) (expression_statement "iVar5 = *piVar2;" (assignment_expression "iVar5 = *piVar2" identifier = (pointer_expression "*piVar2" * identifier)) ;) (if_statement "if ((iVar5 != 0) && (iVar5 != -2)) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }" if (parenthesized_expression "((iVar5 != 0) && (iVar5 != -2))" ( (binary_expression "(iVar5 != 0) && (iVar5 != -2)" (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar5 != -2)" ( (binary_expression "iVar5 != -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 "*piVar2 = -2;" (assignment_expression "*piVar2 = -2" (pointer_expression "*piVar2" * identifier) = number_literal) ;) (goto_statement "goto LAB_0023bcc9;" goto statement_identifier ;) })) (expression_statement "uVar10 = uVar10 & 0xff;" (assignment_expression "uVar10 = uVar10 & 0xff" identifier = (binary_expression "uVar10 & 0xff" identifier & number_literal)) ;) (if_statement "if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }" if (parenthesized_expression "((uVar10 == 0x26) || (uVar10 == 0x29))" ( (binary_expression "(uVar10 == 0x26) || (uVar10 == 0x29)" (parenthesized_expression "(uVar10 == 0x26)" ( (binary_expression "uVar10 == 0x26" identifier == number_literal) )) || (parenthesized_expression "(uVar10 == 0x29)" ( (binary_expression "uVar10 == 0x29" identifier == number_literal) ))) )) (compound_statement "{\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }" { (expression_statement "lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);" (assignment_expression "lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18)" identifier = (pointer_expression "*(long *)(PTR_DAT_0067cb08 + 0x18)" * (cast_expression "(long *)(PTR_DAT_0067cb08 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0067cb08 + 0x18)" ( (binary_expression "PTR_DAT_0067cb08 + 0x18" identifier + number_literal) ))))) ;) (if_statement "if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }" if (parenthesized_expression "(lVar11 == 0)" ( (binary_expression "lVar11 == 0" identifier == number_literal) )) (compound_statement "{\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }" { (expression_statement "FUN_00232220();" (call_expression "FUN_00232220()" identifier (argument_list "()" ( ))) ;) (if_statement "if (*(long *)(param_1 + 0x88) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }" if (parenthesized_expression "(*(long *)(param_1 + 0x88) == 0)" ( (binary_expression "*(long *)(param_1 + 0x88) == 0" (pointer_expression "*(long *)(param_1 + 0x88)" * (cast_expression "(long *)(param_1 + 0x88)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }" { comment (expression_statement "FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");" (call_expression "FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations")" identifier (argument_list "("../../gold/nacl.h",0x90,"do_supported_emulations")" ( (string_literal ""../../gold/nacl.h"" " string_content ") , number_literal , (string_literal ""do_supported_emulations"" " string_content ") ))) ;) })) (if_statement "if (*(long *)(param_1 + 0x20) == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }" if (parenthesized_expression "(*(long *)(param_1 + 0x20) == 0)" ( (binary_expression "*(long *)(param_1 + 0x20) == 0" (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }" { comment (expression_statement "FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");" (call_expression "FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations")" identifier (argument_list "("../../gold/target-select.h",200,"do_supported_emulations")" ( (string_literal ""../../gold/target-select.h"" " string_content ") , number_literal , (string_literal ""do_supported_emulations"" " string_content ") ))) ;) })) (expression_statement "plVar9 = (long *)param_2[1];" (assignment_expression "plVar9 = (long *)param_2[1]" identifier = (cast_expression "(long *)param_2[1]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[1]" identifier [ number_literal ]))) ;) (expression_statement "plVar6 = (long *)param_2[2];" (assignment_expression "plVar6 = (long *)param_2[2]" identifier = (cast_expression "(long *)param_2[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[2]" identifier [ number_literal ]))) ;) (if_statement "if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }" if (parenthesized_expression "(plVar9 == plVar6)" ( (binary_expression "plVar9 == plVar6" identifier == identifier) )) (compound_statement "{\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }" { (expression_statement "FUN_001a5e80(param_2,plVar6,param_1 + 0x20);" (call_expression "FUN_001a5e80(param_2,plVar6,param_1 + 0x20)" identifier (argument_list "(param_2,plVar6,param_1 + 0x20)" ( identifier , identifier , (binary_expression "param_1 + 0x20" identifier + number_literal) ))) ;) (expression_statement "plVar9 = (long *)param_2[1];" (assignment_expression "plVar9 = (long *)param_2[1]" identifier = (cast_expression "(long *)param_2[1]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[1]" identifier [ number_literal ]))) ;) (if_statement "if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;" if (parenthesized_expression "(plVar9 == (long *)param_2[2])" ( (binary_expression "plVar9 == (long *)param_2[2]" identifier == (cast_expression "(long *)param_2[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[2]" identifier [ number_literal ]))) )) (goto_statement "goto LAB_0023c049;" goto statement_identifier ;)) }) (else_clause "else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }" else (compound_statement "{\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }" { (expression_statement "*plVar9 = *(long *)(param_1 + 0x20);" (assignment_expression "*plVar9 = *(long *)(param_1 + 0x20)" (pointer_expression "*plVar9" * identifier) = (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "plVar9 = plVar9 + 1;" (assignment_expression "plVar9 = plVar9 + 1" identifier = (binary_expression "plVar9 + 1" identifier + number_literal)) ;) (expression_statement "param_2[1] = (long)plVar9;" (assignment_expression "param_2[1] = (long)plVar9" (subscript_expression "param_2[1]" identifier [ number_literal ]) = (cast_expression "(long)plVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (if_statement "if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }" if (parenthesized_expression "(plVar9 == plVar6)" ( (binary_expression "plVar9 == plVar6" identifier == identifier) )) (compound_statement "{\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }" { (labeled_statement "LAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);" statement_identifier : (expression_statement "FUN_001a5e80(param_2,plVar9,param_1 + 0x88);" (call_expression "FUN_001a5e80(param_2,plVar9,param_1 + 0x88)" identifier (argument_list "(param_2,plVar9,param_1 + 0x88)" ( identifier , identifier , (binary_expression "param_1 + 0x88" identifier + number_literal) ))) ;)) (return_statement "return;" return ;) })) }))) (expression_statement "*plVar9 = *(long *)(param_1 + 0x88);" (assignment_expression "*plVar9 = *(long *)(param_1 + 0x88)" (pointer_expression "*plVar9" * identifier) = (pointer_expression "*(long *)(param_1 + 0x88)" * (cast_expression "(long *)(param_1 + 0x88)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) ))))) ;) (expression_statement "param_2[1] = (long)(plVar9 + 1);" (assignment_expression "param_2[1] = (long)(plVar9 + 1)" (subscript_expression "param_2[1]" identifier [ number_literal ]) = (cast_expression "(long)(plVar9 + 1)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(plVar9 + 1)" ( (binary_expression "plVar9 + 1" identifier + number_literal) )))) ;) (return_statement "return;" return ;) })) (if_statement "if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }" if (parenthesized_expression "((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0'))" ( (binary_expression "(*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')" (parenthesized_expression "(*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28)" ( (binary_expression "*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28" (pointer_expression "*(int *)(*(long *)(lVar11 + 8) + 8)" * (cast_expression "(int *)(*(long *)(lVar11 + 8) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(lVar11 + 8) + 8)" ( (binary_expression "*(long *)(lVar11 + 8) + 8" (pointer_expression "*(long *)(lVar11 + 8)" * (cast_expression "(long *)(lVar11 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 8)" ( (binary_expression "lVar11 + 8" identifier + number_literal) )))) + number_literal) )))) != number_literal) )) || (parenthesized_expression "(*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')" ( (binary_expression "*(char *)(*(long *)(lVar11 + 8) + 4) != '\0'" (pointer_expression "*(char *)(*(long *)(lVar11 + 8) + 4)" * (cast_expression "(char *)(*(long *)(lVar11 + 8) + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(lVar11 + 8) + 4)" ( (binary_expression "*(long *)(lVar11 + 8) + 4" (pointer_expression "*(long *)(lVar11 + 8)" * (cast_expression "(long *)(lVar11 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 8)" ( (binary_expression "lVar11 + 8" identifier + number_literal) )))) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }" { comment (expression_statement "FUN_00352af0("../../gold/arm.cc",0x988,"default_target");" (call_expression "FUN_00352af0("../../gold/arm.cc",0x988,"default_target")" identifier (argument_list "("../../gold/arm.cc",0x988,"default_target")" ( (string_literal ""../../gold/arm.cc"" " string_content ") , number_literal , (string_literal ""default_target"" " string_content ") ))) ;) })) (if_statement "if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" if (parenthesized_expression "(uVar10 == 0x26)" ( (binary_expression "uVar10 == 0x26" identifier == number_literal) )) (compound_statement "{\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }" { (expression_statement "uVar10 = *(uint *)(lVar11 + 0x130);" (assignment_expression "uVar10 = *(uint *)(lVar11 + 0x130)" identifier = (pointer_expression "*(uint *)(lVar11 + 0x130)" * (cast_expression "(uint *)(lVar11 + 0x130)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 0x130)" ( (binary_expression "lVar11 + 0x130" identifier + number_literal) ))))) ;) }) (else_clause "else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" else (if_statement "if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" if (parenthesized_expression "(uVar10 == 0x29)" ( (binary_expression "uVar10 == 0x29" identifier == number_literal) )) (compound_statement "{\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" { (expression_statement "uVar10 = *(uint *)(lVar11 + 0x134);" (assignment_expression "uVar10 = *(uint *)(lVar11 + 0x134)" identifier = (pointer_expression "*(uint *)(lVar11 + 0x134)" * (cast_expression "(uint *)(lVar11 + 0x134)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 0x134)" ( (binary_expression "lVar11 + 0x134" identifier + number_literal) ))))) ;) })))) })) (switch_statement "switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }" switch (parenthesized_expression "(uVar10)" ( identifier )) (compound_statement "{\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }" { (case_statement "case 0:" case number_literal :) (case_statement "case 0x28:" case number_literal :) (case_statement "case 0x5a:" case number_literal :) (case_statement "case 0x5b:" case number_literal :) (case_statement "case 0x5c:" case number_literal :) (case_statement "case 0x5d:" case number_literal :) (case_statement "case 99:" case number_literal :) (case_statement "case 100:" case number_literal :) (case_statement "case 0x65:" case number_literal :) (case_statement "case 0x81:" case number_literal :) (case_statement "case 0x82:\n            cVar7 = '\x02';\n            break;" case number_literal : (expression_statement "cVar7 = '\x02';" (assignment_expression "cVar7 = '\x02'" identifier = (char_literal "'\x02'" ' escape_sequence ')) ;) (break_statement "break;" break ;)) (case_statement "default:\n            cVar7 = '\t';\n            break;" default : (expression_statement "cVar7 = '\t';" (assignment_expression "cVar7 = '\t'" identifier = (char_literal "'\t'" ' escape_sequence ')) ;) (break_statement "break;" break ;)) (case_statement "case 2:" case number_literal :) (case_statement "case 3:" case number_literal :) (case_statement "case 9:" case number_literal :) (case_statement "case 0x18:" case number_literal :) (case_statement "case 0x19:" case number_literal :) (case_statement "case 0x1a:" case number_literal :) (case_statement "case 0x1f:" case number_literal :) (case_statement "case 0x37:" case number_literal :) (case_statement "case 0x38:" case number_literal :) (case_statement "case 0x5e:" case number_literal :) (case_statement "case 0x5f:" case number_literal :) (case_statement "case 0x60:" case number_literal :) (case_statement "case 0x68:" case number_literal :) (case_statement "case 0x69:" case number_literal :) (case_statement "case 0x6a:" case number_literal :) (case_statement "case 0x6b:" case number_literal :) (case_statement "case 0x6c:\n            cVar7 = '\a';\n            break;" case number_literal : (expression_statement "cVar7 = '\a';" (assignment_expression "cVar7 = '\a'" identifier = (char_literal "'\a'" ' escape_sequence ')) ;) (break_statement "break;" break ;)) (case_statement "case 0x26:" case number_literal :) (case_statement "case 0x29:\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");" case number_literal : comment (expression_statement "FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");" (call_expression "FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy")" identifier (argument_list "("../../gold/arm.cc",0x824,"local_section_strategy")" ( (string_literal ""../../gold/arm.cc"" " string_content ") , number_literal , (string_literal ""local_section_strategy"" " string_content ") ))) ;)) })) (if_statement "if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }" if (parenthesized_expression "(*(code **)(*param_4 + 0xc0) == FUN_001a5070)" ( (binary_expression "*(code **)(*param_4 + 0xc0) == FUN_001a5070" (pointer_expression "*(code **)(*param_4 + 0xc0)" * (cast_expression "(code **)(*param_4 + 0xc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*param_4 + 0xc0)" ( (binary_expression "*param_4 + 0xc0" (pointer_expression "*param_4" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }" { (if_statement "if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }" if (parenthesized_expression "((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8)" ( (binary_expression "(ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8" (call_expression "(ulong)(param_4[0xb] - param_4[10] >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(param_4[0xb] - param_4[10] >> 3)" ( (binary_expression "param_4[0xb] - param_4[10] >> 3" (binary_expression "param_4[0xb] - param_4[10]" (subscript_expression "param_4[0xb]" identifier [ number_literal ]) - (subscript_expression "param_4[10]" identifier [ number_literal ])) >> number_literal) ))) <= (cast_expression "(ulong)uVar8" ( (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 "pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);" (assignment_expression "pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200)" identifier = (cast_expression "(byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200)" ( (binary_expression "*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200" (pointer_expression "*(long *)(param_4[10] + (ulong)uVar8 * 8)" * (cast_expression "(long *)(param_4[10] + (ulong)uVar8 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4[10] + (ulong)uVar8 * 8)" ( (binary_expression "param_4[10] + (ulong)uVar8 * 8" (subscript_expression "param_4[10]" identifier [ number_literal ]) + (binary_expression "(ulong)uVar8 * 8" (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) )))) + number_literal) )))) ;) (expression_statement "*pbVar1 = *pbVar1 | 1;" (assignment_expression "*pbVar1 = *pbVar1 | 1" (pointer_expression "*pbVar1" * identifier) = (binary_expression "*pbVar1 | 1" (pointer_expression "*pbVar1" * identifier) | number_literal)) ;) }) (else_clause "else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }" else (compound_statement "{\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }" { (expression_statement "lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);" (assignment_expression "lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8)" identifier = (call_expression "(**(code **)(*param_4 + 0xc0))(param_4,uVar8)" (parenthesized_expression "(**(code **)(*param_4 + 0xc0))" ( (pointer_expression "**(code **)(*param_4 + 0xc0)" * (pointer_expression "*(code **)(*param_4 + 0xc0)" * (cast_expression "(code **)(*param_4 + 0xc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*param_4 + 0xc0)" ( (binary_expression "*param_4 + 0xc0" (pointer_expression "*param_4" * identifier) + number_literal) ))))) )) (argument_list "(param_4,uVar8)" ( identifier , identifier )))) ;) (expression_statement "*(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;" (assignment_expression "*(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1" (pointer_expression "*(byte *)(lVar11 + 200)" * (cast_expression "(byte *)(lVar11 + 200)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 200)" ( (binary_expression "lVar11 + 200" identifier + number_literal) )))) = (binary_expression "*(byte *)(lVar11 + 200) | 1" (pointer_expression "*(byte *)(lVar11 + 200)" * (cast_expression "(byte *)(lVar11 + 200)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 200)" ( (binary_expression "lVar11 + 200" identifier + number_literal) )))) | number_literal)) ;) }))) (expression_statement "param_2 = (long *)local_39;" (assignment_expression "param_2 = (long *)local_39" identifier = (cast_expression "(long *)local_39" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "param_1 = param_13;" (assignment_expression "param_1 = param_13" identifier = identifier) ;) (expression_statement "local_39[0] = cVar7;" (assignment_expression "local_39[0] = cVar7" (subscript_expression "local_39[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "FUN_001a5c60();" (call_expression "FUN_001a5c60()" identifier (argument_list "()" ( ))) ;) (if_statement "if (cVar7 != '\b') goto LAB_0023bcd9;" if (parenthesized_expression "(cVar7 != '\b')" ( (binary_expression "cVar7 != '\b'" identifier != (char_literal "'\b'" ' escape_sequence ')) )) (goto_statement "goto LAB_0023bcd9;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }" else (compound_statement "{\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }" { (labeled_statement "LAB_0023bcc9:\n          local_39[0] = '\0';" statement_identifier : (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 ')) ;)) (expression_statement "param_2 = (long *)local_39;" (assignment_expression "param_2 = (long *)local_39" identifier = (cast_expression "(long *)local_39" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "param_1 = param_13;" (assignment_expression "param_1 = param_13" identifier = identifier) ;) (expression_statement "FUN_001a5c60();" (call_expression "FUN_001a5c60()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;" statement_identifier : (expression_statement "*(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;" (assignment_expression "*(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1" (pointer_expression "*(long *)(param_13 + 0x18)" * (cast_expression "(long *)(param_13 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_13 + 0x18)" ( (binary_expression "param_13 + 0x18" identifier + number_literal) )))) = (binary_expression "*(long *)(param_13 + 0x18) + 1" (pointer_expression "*(long *)(param_13 + 0x18)" * (cast_expression "(long *)(param_13 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_13 + 0x18)" ( (binary_expression "param_13 + 0x18" identifier + number_literal) )))) + number_literal)) ;)) }))) (expression_statement "lVar14 = lVar14 + 1;" (assignment_expression "lVar14 = lVar14 + 1" identifier = (binary_expression "lVar14 + 1" identifier + number_literal)) ;) (if_statement "if (param_8 == lVar14) {\n          return;\n        }" if (parenthesized_expression "(param_8 == lVar14)" ( (binary_expression "param_8 == lVar14" identifier == identifier) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) })) (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 "lVar14 = lVar14 + 1;" (assignment_expression "lVar14 = lVar14 + 1" identifier = (binary_expression "lVar14 + 1" identifier + number_literal)) ;) (expression_statement "param_2 = (long *)local_39;" (assignment_expression "param_2 = (long *)local_39" identifier = (cast_expression "(long *)local_39" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "param_1 = param_13;" (assignment_expression "param_1 = param_13" identifier = identifier) ;) (expression_statement "FUN_001a5c60();" (call_expression "FUN_001a5c60()" identifier (argument_list "()" ( ))) ;) }) while (parenthesized_expression "(param_8 != lVar14)" ( (binary_expression "param_8 != lVar14" identifier != identifier) )) ;) })) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Enum "DT": Some values do not have unique names */\n/* WARNING: Struct "Arm_input_section<false>": ignoring overlapping field "original_addralign_" */\n/* WARNING: Enum "<anon>": Some values do not have unique names */\n/* WARNING: Enum "ELFOSABI": Some values do not have unique names */\n/* WARNING: Struct "Arm_input_section<true>": ignoring overlapping field "original_addralign_" */\n/* DWARF original prototype: void scan_relocatable_relocs(Target_arm<false> * this, Symbol_table *\n   symtab, Layout * layout, Sized_relobj_file<32,_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_symbols,\n   Relocatable_relocs * rr) */\n\nvoid __thiscall\nanon_unknown.dwarf_9b9b16::Target_arm<false>::scan_relocatable_relocs\n          (Target_arm<false> *this,Symbol_table *symtab,Layout *layout,\n          Sized_relobj_file<32,_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_symbols,Relocatable_relocs *rr)\n\n{\n  undefined1 *puVar1;\n  byte *pbVar2;\n  byte bVar3;\n  ushort uVar4;\n  uint uVar5;\n  pointer pSVar6;\n  _func_int_varargs *p_Var7;\n  pointer ppOVar8;\n  Target *pTVar9;\n  bool bVar10;\n  uint uVar11;\n  int iVar12;\n  undefined4 extraout_var;\n  Xindex *this_00;\n  uchar uVar13;\n  Elf_Word EVar14;\n  uint uVar15;\n  uint symndx;\n  size_t sVar17;\n  uchar local_39 [9];\n  undefined4 extraout_var_00;\n  ulong uVar16;\n  \n  if (sh_type != 9) {\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }\n  if (reloc_count != 0) {\n    sVar17 = 0;\n    do {\n      while ((!needs_special_offset_handling ||\n             (bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10))) {\n        uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4);\n        symndx = uVar5 >> 8;\n        uVar16 = (ulong)symndx;\n        if (uVar16 < param_10) {\n          if (plocal_symbols == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          uVar15 = symndx << 4;\n          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);\n          uVar11 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }\n          EVar14 = uVar5 & 0xff;\n          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }\n          switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }\n          local_39[0] = uVar13;\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n          if (uVar13 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }\n        sVar17 = sVar17 + 1;\n        if (reloc_count == sVar17) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      sVar17 = sVar17 + 1;\n      std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                (&rr->reloc_strategies_,local_39);\n    } while (reloc_count != sVar17);\n  }\n  return;\n}\n\n" comment comment comment comment comment comment (function_definition "void __thiscall\nanon_unknown.dwarf_9b9b16::Target_arm<false>::scan_relocatable_relocs\n          (Target_arm<false> *this,Symbol_table *symtab,Layout *layout,\n          Sized_relobj_file<32,_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_symbols,Relocatable_relocs *rr)\n\n{\n  undefined1 *puVar1;\n  byte *pbVar2;\n  byte bVar3;\n  ushort uVar4;\n  uint uVar5;\n  pointer pSVar6;\n  _func_int_varargs *p_Var7;\n  pointer ppOVar8;\n  Target *pTVar9;\n  bool bVar10;\n  uint uVar11;\n  int iVar12;\n  undefined4 extraout_var;\n  Xindex *this_00;\n  uchar uVar13;\n  Elf_Word EVar14;\n  uint uVar15;\n  uint symndx;\n  size_t sVar17;\n  uchar local_39 [9];\n  undefined4 extraout_var_00;\n  ulong uVar16;\n  \n  if (sh_type != 9) {\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }\n  if (reloc_count != 0) {\n    sVar17 = 0;\n    do {\n      while ((!needs_special_offset_handling ||\n             (bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10))) {\n        uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4);\n        symndx = uVar5 >> 8;\n        uVar16 = (ulong)symndx;\n        if (uVar16 < param_10) {\n          if (plocal_symbols == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          uVar15 = symndx << 4;\n          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);\n          uVar11 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }\n          EVar14 = uVar5 & 0xff;\n          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }\n          switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }\n          local_39[0] = uVar13;\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n          if (uVar13 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }\n        sVar17 = sVar17 + 1;\n        if (reloc_count == sVar17) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      sVar17 = sVar17 + 1;\n      std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                (&rr->reloc_strategies_,local_39);\n    } while (reloc_count != sVar17);\n  }\n  return;\n}" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "anon_unknown.dwarf_9b9b16::Target_arm<false>::" identifier . identifier : : identifier < false > : :) (function_declarator "scan_relocatable_relocs\n          (Target_arm<false> *this,Symbol_table *symtab,Layout *layout,\n          Sized_relobj_file<32,_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_symbols,Relocatable_relocs *rr)" identifier (parameter_list "(Target_arm<false> *this,Symbol_table *symtab,Layout *layout,\n          Sized_relobj_file<32,_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_symbols,Relocatable_relocs *rr)" ( (parameter_declaration "Target_arm<false> *this" type_identifier (ERROR "<false>" < false >) (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 "<32" < 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_symbols" type_identifier (pointer_declarator "*plocal_symbols" * identifier)) , (parameter_declaration "Relocatable_relocs *rr" type_identifier (pointer_declarator "*rr" * identifier)) ))) (compound_statement "{\n  undefined1 *puVar1;\n  byte *pbVar2;\n  byte bVar3;\n  ushort uVar4;\n  uint uVar5;\n  pointer pSVar6;\n  _func_int_varargs *p_Var7;\n  pointer ppOVar8;\n  Target *pTVar9;\n  bool bVar10;\n  uint uVar11;\n  int iVar12;\n  undefined4 extraout_var;\n  Xindex *this_00;\n  uchar uVar13;\n  Elf_Word EVar14;\n  uint uVar15;\n  uint symndx;\n  size_t sVar17;\n  uchar local_39 [9];\n  undefined4 extraout_var_00;\n  ulong uVar16;\n  \n  if (sh_type != 9) {\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }\n  if (reloc_count != 0) {\n    sVar17 = 0;\n    do {\n      while ((!needs_special_offset_handling ||\n             (bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10))) {\n        uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4);\n        symndx = uVar5 >> 8;\n        uVar16 = (ulong)symndx;\n        if (uVar16 < param_10) {\n          if (plocal_symbols == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          uVar15 = symndx << 4;\n          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);\n          uVar11 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }\n          EVar14 = uVar5 & 0xff;\n          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }\n          switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }\n          local_39[0] = uVar13;\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n          if (uVar13 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }\n        sVar17 = sVar17 + 1;\n        if (reloc_count == sVar17) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      sVar17 = sVar17 + 1;\n      std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                (&rr->reloc_strategies_,local_39);\n    } while (reloc_count != sVar17);\n  }\n  return;\n}" { (declaration "undefined1 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "byte *pbVar2;" type_identifier (pointer_declarator "*pbVar2" * identifier) ;) (declaration "byte bVar3;" type_identifier identifier ;) (declaration "ushort uVar4;" type_identifier identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "pointer pSVar6;" type_identifier identifier ;) (declaration "_func_int_varargs *p_Var7;" type_identifier (pointer_declarator "*p_Var7" * identifier) ;) (declaration "pointer ppOVar8;" type_identifier identifier ;) (declaration "Target *pTVar9;" type_identifier (pointer_declarator "*pTVar9" * identifier) ;) (declaration "bool bVar10;" primitive_type identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "undefined4 extraout_var;" type_identifier identifier ;) (declaration "Xindex *this_00;" type_identifier (pointer_declarator "*this_00" * identifier) ;) (declaration "uchar uVar13;" type_identifier identifier ;) (declaration "Elf_Word EVar14;" type_identifier identifier ;) (declaration "uint uVar15;" type_identifier identifier ;) (declaration "uint symndx;" type_identifier identifier ;) (declaration "size_t sVar17;" primitive_type identifier ;) (declaration "uchar local_39 [9];" type_identifier (array_declarator "local_39 [9]" identifier [ number_literal ]) ;) (declaration "undefined4 extraout_var_00;" type_identifier identifier ;) (declaration "ulong uVar16;" type_identifier identifier ;) (if_statement "if (sh_type != 9) {\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }" if (parenthesized_expression "(sh_type != 9)" ( (binary_expression "sh_type != 9" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");" (call_expression "do_gold_unreachable("../../gold/arm.cc",0x2873,"scan_relocatable_relocs")" identifier (argument_list "("../../gold/arm.cc",0x2873,"scan_relocatable_relocs")" ( (string_literal ""../../gold/arm.cc"" " string_content ") , number_literal , (string_literal ""scan_relocatable_relocs"" " string_content ") ))) ;)) })) (if_statement "if (reloc_count != 0) {\n    sVar17 = 0;\n    do {\n      while ((!needs_special_offset_handling ||\n             (bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10))) {\n        uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4);\n        symndx = uVar5 >> 8;\n        uVar16 = (ulong)symndx;\n        if (uVar16 < param_10) {\n          if (plocal_symbols == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          uVar15 = symndx << 4;\n          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);\n          uVar11 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }\n          EVar14 = uVar5 & 0xff;\n          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }\n          switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }\n          local_39[0] = uVar13;\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n          if (uVar13 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }\n        sVar17 = sVar17 + 1;\n        if (reloc_count == sVar17) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      sVar17 = sVar17 + 1;\n      std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                (&rr->reloc_strategies_,local_39);\n    } while (reloc_count != sVar17);\n  }" if (parenthesized_expression "(reloc_count != 0)" ( (binary_expression "reloc_count != 0" identifier != number_literal) )) (compound_statement "{\n    sVar17 = 0;\n    do {\n      while ((!needs_special_offset_handling ||\n             (bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10))) {\n        uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4);\n        symndx = uVar5 >> 8;\n        uVar16 = (ulong)symndx;\n        if (uVar16 < param_10) {\n          if (plocal_symbols == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          uVar15 = symndx << 4;\n          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);\n          uVar11 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }\n          EVar14 = uVar5 & 0xff;\n          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }\n          switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }\n          local_39[0] = uVar13;\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n          if (uVar13 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }\n        sVar17 = sVar17 + 1;\n        if (reloc_count == sVar17) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      sVar17 = sVar17 + 1;\n      std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                (&rr->reloc_strategies_,local_39);\n    } while (reloc_count != sVar17);\n  }" { (expression_statement "sVar17 = 0;" (assignment_expression "sVar17 = 0" identifier = number_literal) ;) (do_statement "do {\n      while ((!needs_special_offset_handling ||\n             (bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10))) {\n        uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4);\n        symndx = uVar5 >> 8;\n        uVar16 = (ulong)symndx;\n        if (uVar16 < param_10) {\n          if (plocal_symbols == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          uVar15 = symndx << 4;\n          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);\n          uVar11 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }\n          EVar14 = uVar5 & 0xff;\n          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }\n          switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }\n          local_39[0] = uVar13;\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n          if (uVar13 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }\n        sVar17 = sVar17 + 1;\n        if (reloc_count == sVar17) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      sVar17 = sVar17 + 1;\n      std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                (&rr->reloc_strategies_,local_39);\n    } while (reloc_count != sVar17);" do (compound_statement "{\n      while ((!needs_special_offset_handling ||\n             (bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10))) {\n        uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4);\n        symndx = uVar5 >> 8;\n        uVar16 = (ulong)symndx;\n        if (uVar16 < param_10) {\n          if (plocal_symbols == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          uVar15 = symndx << 4;\n          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);\n          uVar11 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }\n          EVar14 = uVar5 & 0xff;\n          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }\n          switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }\n          local_39[0] = uVar13;\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n          if (uVar13 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }\n        sVar17 = sVar17 + 1;\n        if (reloc_count == sVar17) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      sVar17 = sVar17 + 1;\n      std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                (&rr->reloc_strategies_,local_39);\n    }" { (while_statement "while ((!needs_special_offset_handling ||\n             (bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10))) {\n        uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4);\n        symndx = uVar5 >> 8;\n        uVar16 = (ulong)symndx;\n        if (uVar16 < param_10) {\n          if (plocal_symbols == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          uVar15 = symndx << 4;\n          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);\n          uVar11 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }\n          EVar14 = uVar5 & 0xff;\n          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }\n          switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }\n          local_39[0] = uVar13;\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n          if (uVar13 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }\n        sVar17 = sVar17 + 1;\n        if (reloc_count == sVar17) {\n          return;\n        }\n      }" while (parenthesized_expression "((!needs_special_offset_handling ||\n             (bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10)))" ( (parenthesized_expression "(!needs_special_offset_handling ||\n             (bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10))" ( (binary_expression "!needs_special_offset_handling ||\n             (bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10)" (unary_expression "!needs_special_offset_handling" ! identifier) || (parenthesized_expression "(bVar10 = gold::Output_section::is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10)" ( (ERROR "bVar10 = gold::Output_section::" (assignment_expression "bVar10 = gold" identifier = identifier) : : identifier : :) (comma_expression "is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8)), bVar10" (call_expression "is_input_address_mapped\n                                 (output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8))" identifier (argument_list "(output_section,(Relobj *)object,data_shndx,\n                                  (ulong)*(uint *)(prelocs + sVar17 * 8))" ( identifier , (cast_expression "(Relobj *)object" ( (type_descriptor "Relobj *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (binary_expression "(ulong)*(uint *)(prelocs + sVar17 * 8)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(prelocs + sVar17 * 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(prelocs + sVar17 * 8)" ( (binary_expression "prelocs + sVar17 * 8" identifier + (binary_expression "sVar17 * 8" identifier * number_literal)) )))) ))) , identifier) ))) )) )) (compound_statement "{\n        uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4);\n        symndx = uVar5 >> 8;\n        uVar16 = (ulong)symndx;\n        if (uVar16 < param_10) {\n          if (plocal_symbols == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          uVar15 = symndx << 4;\n          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);\n          uVar11 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }\n          EVar14 = uVar5 & 0xff;\n          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }\n          switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }\n          local_39[0] = uVar13;\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n          if (uVar13 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }\n        sVar17 = sVar17 + 1;\n        if (reloc_count == sVar17) {\n          return;\n        }\n      }" { (expression_statement "uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4);" (assignment_expression "uVar5 = *(uint *)(prelocs + sVar17 * 8 + 4)" identifier = (pointer_expression "*(uint *)(prelocs + sVar17 * 8 + 4)" * (cast_expression "(uint *)(prelocs + sVar17 * 8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(prelocs + sVar17 * 8 + 4)" ( (binary_expression "prelocs + sVar17 * 8 + 4" (binary_expression "prelocs + sVar17 * 8" identifier + (binary_expression "sVar17 * 8" identifier * number_literal)) + number_literal) ))))) ;) (expression_statement "symndx = uVar5 >> 8;" (assignment_expression "symndx = uVar5 >> 8" identifier = (binary_expression "uVar5 >> 8" identifier >> number_literal)) ;) (expression_statement "uVar16 = (ulong)symndx;" (assignment_expression "uVar16 = (ulong)symndx" identifier = (cast_expression "(ulong)symndx" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (if_statement "if (uVar16 < param_10) {\n          if (plocal_symbols == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          uVar15 = symndx << 4;\n          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);\n          uVar11 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }\n          EVar14 = uVar5 & 0xff;\n          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }\n          switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }\n          local_39[0] = uVar13;\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n          if (uVar13 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }" if (parenthesized_expression "(uVar16 < param_10)" ( (binary_expression "uVar16 < param_10" identifier < identifier) )) (compound_statement "{\n          if (plocal_symbols == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          uVar15 = symndx << 4;\n          uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);\n          uVar11 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }\n          EVar14 = uVar5 & 0xff;\n          if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }\n          switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];\n          if (p_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }\n          local_39[0] = uVar13;\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\n          if (uVar13 != '\b') goto LAB_0023bcd9;\n        }" { (if_statement "if (plocal_symbols == (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_symbols == (uchar *)0x0)" ( (binary_expression "plocal_symbols == (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 "uVar15 = symndx << 4;" (assignment_expression "uVar15 = symndx << 4" identifier = (binary_expression "symndx << 4" identifier << number_literal)) ;) (expression_statement "uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe);" (assignment_expression "uVar4 = *(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe)" identifier = (pointer_expression "*(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe)" * (cast_expression "(ushort *)(plocal_symbols + (ulong)uVar15 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plocal_symbols + (ulong)uVar15 + 0xe)" ( (binary_expression "plocal_symbols + (ulong)uVar15 + 0xe" (binary_expression "plocal_symbols + (ulong)uVar15" identifier + (cast_expression "(ulong)uVar15" ( (type_descriptor "ulong" type_identifier) ) identifier)) + number_literal) ))))) ;) (expression_statement "uVar11 = (uint)uVar4;" (assignment_expression "uVar11 = (uint)uVar4" identifier = (cast_expression "(uint)uVar4" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }" if (parenthesized_expression "(uVar4 < 0xff00)" ( (binary_expression "uVar4 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (ppOVar8[uVar11] == (Output_section *)0x0) break;\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }" { (labeled_statement "LAB_0023bd7e:\n            if (uVar11 == 0) goto LAB_0023bc63;" statement_identifier : (if_statement "if (uVar11 == 0) goto LAB_0023bc63;" if (parenthesized_expression "(uVar11 == 0)" ( (binary_expression "uVar11 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0023bc63;" goto statement_identifier ;))) (expression_statement "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;" (field_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start" (field_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl" (binary_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std" (assignment_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold" identifier = (binary_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<32,_false>)" ( (comma_expression "object->super_Sized_relobj<32,_false" (binary_expression "object->super_Sized_relobj<32" (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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11)" ( (binary_expression "(ulong)((long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11" (call_expression "(ulong)((long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3)" ( (binary_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3" (binary_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8" (field_expression "(long)(object->super_Sized_relobj<32,_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<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std" (binary_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold" (cast_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<32,_false>)" ( (comma_expression "object->super_Sized_relobj<32,_false" (binary_expression "object->super_Sized_relobj<32" (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)ppOVar8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) >> number_literal) ))) <= (cast_expression "(ulong)uVar11" ( (type_descriptor "ulong" type_identifier) ) 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 (ppOVar8[uVar11] == (Output_section *)0x0) break;" if (parenthesized_expression "(ppOVar8[uVar11] == (Output_section *)0x0)" ( (binary_expression "ppOVar8[uVar11] == (Output_section *)0x0" (subscript_expression "ppOVar8[uVar11]" identifier [ identifier ]) == (cast_expression "(Output_section *)0x0" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];" (assignment_expression "bVar3 = plocal_symbols[(ulong)uVar15 + 0xc]" identifier = (subscript_expression "plocal_symbols[(ulong)uVar15 + 0xc]" identifier [ (binary_expression "(ulong)uVar15 + 0xc" (cast_expression "(ulong)uVar15" ( (type_descriptor "ulong" type_identifier) ) identifier) + number_literal) ])) ;) }) (else_clause "else {\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }" else (compound_statement "{\n            if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];\n          }" { (if_statement "if (uVar4 == 0xffff) {\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }" if (parenthesized_expression "(uVar4 == 0xffff)" ( (binary_expression "uVar4 == 0xffff" identifier == number_literal) )) (compound_statement "{\n              this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;\n              if (this_00 == (Xindex *)0x0) {\n                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }\n              uVar11 = gold::Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);\n              goto LAB_0023bd7e;\n            }" { (expression_statement "this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_;" (assignment_expression "this_00 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_" identifier = (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<32,_false>)" ( (comma_expression "object->super_Sized_relobj<32,_false" (binary_expression "object->super_Sized_relobj<32" (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                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_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                iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);\n                this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12);\n                (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;\n              }" { (expression_statement "iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object);" (assignment_expression "iVar12 = (*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object)" identifier = (call_expression "(*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])(object)" (parenthesized_expression "(*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b])" ( (pointer_expression "*(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b]" * (subscript_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object[0x1b]" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.\n                           _vptr_Object" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<32,_false>)" ( (comma_expression "object->super_Sized_relobj<32,_false" (binary_expression "object->super_Sized_relobj<32" (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,iVar12);" (assignment_expression "this_00 = (Xindex *)CONCAT44(extraout_var_00,iVar12)" identifier = (cast_expression "(Xindex *)CONCAT44(extraout_var_00,iVar12)" ( (type_descriptor "Xindex *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT44(extraout_var_00,iVar12)" identifier (argument_list "(extraout_var_00,iVar12)" ( identifier , identifier ))))) ;) (expression_statement "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00;" (assignment_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_ = this_00" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object.xindex_" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<32,_false>)" ( (comma_expression "object->super_Sized_relobj<32,_false" (binary_expression "object->super_Sized_relobj<32" (field_expression "object->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) = identifier) ;) })) (ERROR "uVar11 = gold::" (assignment_expression "uVar11 = gold" identifier = identifier) : :) (labeled_statement "Xindex::sym_xindex_to_shndx(this_00,(Object *)object,symndx);" statement_identifier : (ERROR ":" :) (expression_statement "sym_xindex_to_shndx(this_00,(Object *)object,symndx);" (call_expression "sym_xindex_to_shndx(this_00,(Object *)object,symndx)" identifier (argument_list "(this_00,(Object *)object,symndx)" ( identifier , (cast_expression "(Object *)object" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))) ;)) (goto_statement "goto LAB_0023bd7e;" goto statement_identifier ;) })) (labeled_statement "LAB_0023bc63:\n            bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];" statement_identifier : (expression_statement "bVar3 = plocal_symbols[(ulong)uVar15 + 0xc];" (assignment_expression "bVar3 = plocal_symbols[(ulong)uVar15 + 0xc]" identifier = (subscript_expression "plocal_symbols[(ulong)uVar15 + 0xc]" identifier [ (binary_expression "(ulong)uVar15 + 0xc" (cast_expression "(ulong)uVar15" ( (type_descriptor "ulong" type_identifier) ) identifier) + number_literal) ])) ;)) }))) (if_statement "if ((bVar3 & 0xf) != 3) {\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }" if (parenthesized_expression "((bVar3 & 0xf) != 3)" ( (binary_expression "(bVar3 & 0xf) != 3" (parenthesized_expression "(bVar3 & 0xf)" ( (binary_expression "bVar3 & 0xf" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n            if (symndx == 0 && (uVar5 & 0xff) == 0) break;\n            pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;\n            if ((ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable\n                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            pSVar6 = pSVar6 + uVar16;\n            uVar5 = pSVar6->output_symtab_index_;\n            if ((uVar5 != 0) && (uVar5 != 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            pSVar6->output_symtab_index_ = 0xfffffffe;\n            goto LAB_0023bcc9;\n          }" { (if_statement "if (symndx == 0 && (uVar5 & 0xff) == 0) break;" if (parenthesized_expression "(symndx == 0 && (uVar5 & 0xff) == 0)" ( (binary_expression "symndx == 0 && (uVar5 & 0xff) == 0" (binary_expression "symndx == 0" identifier == number_literal) && (binary_expression "(uVar5 & 0xff) == 0" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) == number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start;" (field_expression "pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl._M_start" (field_expression "pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                     ._M_impl" (binary_expression "pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_" (binary_expression "pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_" (binary_expression "pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32" (binary_expression "pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold" (binary_expression "pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32>,_std" (binary_expression "pSVar6 = (object->local_values_).\n                     super__Vector_base<gold::Symbol_value<32" (assignment_expression "pSVar6 = (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<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16) {\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<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16)" ( (binary_expression "(ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555) <=\n                uVar16" (call_expression "(ulong)(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555)" ( (binary_expression "((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3) * -0x5555555555555555" (parenthesized_expression "((long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3)" ( (binary_expression "(long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6 >> 3" (binary_expression "(long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish - (long)pSVar6" (field_expression "(long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl._M_finish" (field_expression "(long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>\n                               ._M_impl" (binary_expression "(long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_" (binary_expression "(long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_" (binary_expression "(long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32" (binary_expression "(long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold" (binary_expression "(long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32>,_std" (binary_expression "(long)(object->local_values_).\n                               super__Vector_base<gold::Symbol_value<32" (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)pSVar6" ( (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 "pSVar6 = pSVar6 + uVar16;" (assignment_expression "pSVar6 = pSVar6 + uVar16" identifier = (binary_expression "pSVar6 + uVar16" identifier + identifier)) ;) (expression_statement "uVar5 = pSVar6->output_symtab_index_;" (assignment_expression "uVar5 = pSVar6->output_symtab_index_" identifier = (field_expression "pSVar6->output_symtab_index_" identifier -> field_identifier)) ;) (if_statement "if ((uVar5 != 0) && (uVar5 != 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 "((uVar5 != 0) && (uVar5 != 0xfffffffe))" ( (binary_expression "(uVar5 != 0) && (uVar5 != 0xfffffffe)" (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar5 != 0xfffffffe)" ( (binary_expression "uVar5 != 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 "pSVar6->output_symtab_index_ = 0xfffffffe;" (assignment_expression "pSVar6->output_symtab_index_ = 0xfffffffe" (field_expression "pSVar6->output_symtab_index_" identifier -> field_identifier) = number_literal) ;) (goto_statement "goto LAB_0023bcc9;" goto statement_identifier ;) })) (expression_statement "EVar14 = uVar5 & 0xff;" (assignment_expression "EVar14 = uVar5 & 0xff" identifier = (binary_expression "uVar5 & 0xff" identifier & number_literal)) ;) (if_statement "if ((EVar14 == 0x26) || (EVar14 == 0x29)) {\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }" if (parenthesized_expression "((EVar14 == 0x26) || (EVar14 == 0x29))" ( (binary_expression "(EVar14 == 0x26) || (EVar14 == 0x29)" (parenthesized_expression "(EVar14 == 0x26)" ( (binary_expression "EVar14 == 0x26" identifier == number_literal) )) || (parenthesized_expression "(EVar14 == 0x29)" ( (binary_expression "EVar14 == 0x29" identifier == number_literal) ))) )) (compound_statement "{\n            pTVar9 = gold::parameters->target_;\n            if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }\n            if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }\n          }" { (expression_statement "pTVar9 = gold::parameters->target_;" (field_expression "pTVar9 = gold::parameters->target_" (assignment_expression "pTVar9 = gold" identifier = identifier) (ERROR "::parameters" : : identifier) -> field_identifier) ;) (if_statement "if (pTVar9 == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }" if (parenthesized_expression "(pTVar9 == (Target *)0x0)" ( (binary_expression "pTVar9 == (Target *)0x0" identifier == (cast_expression "(Target *)0x0" ( (type_descriptor "Target *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              Target_arm<true>::default_target();\n            }" { comment (expression_statement "Target_arm<true>::default_target();" (binary_expression "Target_arm<true>::default_target()" (binary_expression "Target_arm<true" identifier < true) > (ERROR "::" : :) (call_expression "default_target()" identifier (argument_list "()" ( )))) ;) })) (if_statement "if ((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }" if (parenthesized_expression "((pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false))" ( (binary_expression "(pTVar9->pti_->machine_code != EM_ARM) || (pTVar9->pti_->is_big_endian != false)" (parenthesized_expression "(pTVar9->pti_->machine_code != EM_ARM)" ( (binary_expression "pTVar9->pti_->machine_code != EM_ARM" (field_expression "pTVar9->pti_->machine_code" (field_expression "pTVar9->pti_" identifier -> field_identifier) -> field_identifier) != identifier) )) || (parenthesized_expression "(pTVar9->pti_->is_big_endian != false)" ( (binary_expression "pTVar9->pti_->is_big_endian != false" (field_expression "pTVar9->pti_->is_big_endian" (field_expression "pTVar9->pti_" identifier -> field_identifier) -> field_identifier) != false) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");\n            }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/arm.cc",0x988,"default_target");" (call_expression "do_gold_unreachable("../../gold/arm.cc",0x988,"default_target")" identifier (argument_list "("../../gold/arm.cc",0x988,"default_target")" ( (string_literal ""../../gold/arm.cc"" " string_content ") , number_literal , (string_literal ""default_target"" " string_content ") ))) ;)) })) (if_statement "if (EVar14 == 0x26) {\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }\n            else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }" if (parenthesized_expression "(EVar14 == 0x26)" ( (binary_expression "EVar14 == 0x26" identifier == number_literal) )) (compound_statement "{\n              EVar14 = pTVar9[9].processor_specific_flags_;\n            }" { (expression_statement "EVar14 = pTVar9[9].processor_specific_flags_;" (assignment_expression "EVar14 = pTVar9[9].processor_specific_flags_" identifier = (field_expression "pTVar9[9].processor_specific_flags_" (subscript_expression "pTVar9[9]" identifier [ number_literal ]) . field_identifier)) ;) }) (else_clause "else if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }" else (if_statement "if (EVar14 == 0x29) {\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }" if (parenthesized_expression "(EVar14 == 0x29)" ( (binary_expression "EVar14 == 0x29" identifier == number_literal) )) (compound_statement "{\n              EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;\n            }" { (expression_statement "EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_;" (assignment_expression "EVar14 = *(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_" identifier = (pointer_expression "*(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_" * (cast_expression "(Elf_Word *)&pTVar9[9].are_processor_specific_flags_set_" ( (type_descriptor "Elf_Word *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pTVar9[9].are_processor_specific_flags_set_" & (field_expression "pTVar9[9].are_processor_specific_flags_set_" (subscript_expression "pTVar9[9]" identifier [ number_literal ]) . field_identifier))))) ;) })))) })) (switch_statement "switch(EVar14) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }" switch (parenthesized_expression "(EVar14)" ( identifier )) (compound_statement "{\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            uVar13 = '\x02';\n            break;\n          default:\n            uVar13 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            uVar13 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");\n          }" { (case_statement "case 0:" case number_literal :) (case_statement "case 0x28:" case number_literal :) (case_statement "case 0x5a:" case number_literal :) (case_statement "case 0x5b:" case number_literal :) (case_statement "case 0x5c:" case number_literal :) (case_statement "case 0x5d:" case number_literal :) (case_statement "case 99:" case number_literal :) (case_statement "case 100:" case number_literal :) (case_statement "case 0x65:" case number_literal :) (case_statement "case 0x81:" case number_literal :) (case_statement "case 0x82:\n            uVar13 = '\x02';\n            break;" case number_literal : (expression_statement "uVar13 = '\x02';" (assignment_expression "uVar13 = '\x02'" identifier = (char_literal "'\x02'" ' escape_sequence ')) ;) (break_statement "break;" break ;)) (case_statement "default:\n            uVar13 = '\t';\n            break;" default : (expression_statement "uVar13 = '\t';" (assignment_expression "uVar13 = '\t'" identifier = (char_literal "'\t'" ' escape_sequence ')) ;) (break_statement "break;" break ;)) (case_statement "case 2:" case number_literal :) (case_statement "case 3:" case number_literal :) (case_statement "case 9:" case number_literal :) (case_statement "case 0x18:" case number_literal :) (case_statement "case 0x19:" case number_literal :) (case_statement "case 0x1a:" case number_literal :) (case_statement "case 0x1f:" case number_literal :) (case_statement "case 0x37:" case number_literal :) (case_statement "case 0x38:" case number_literal :) (case_statement "case 0x5e:" case number_literal :) (case_statement "case 0x5f:" case number_literal :) (case_statement "case 0x60:" case number_literal :) (case_statement "case 0x68:" case number_literal :) (case_statement "case 0x69:" case number_literal :) (case_statement "case 0x6a:" case number_literal :) (case_statement "case 0x6b:" case number_literal :) (case_statement "case 0x6c:\n            uVar13 = '\a';\n            break;" case number_literal : (expression_statement "uVar13 = '\a';" (assignment_expression "uVar13 = '\a'" identifier = (char_literal "'\a'" ' escape_sequence ')) ;) (break_statement "break;" break ;)) (case_statement "case 0x26:" case number_literal :) (case_statement "case 0x29:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");" case number_literal : comment (labeled_statement "gold::do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy");" (call_expression "do_gold_unreachable("../../gold/arm.cc",0x824,"local_section_strategy")" identifier (argument_list "("../../gold/arm.cc",0x824,"local_section_strategy")" ( (string_literal ""../../gold/arm.cc"" " string_content ") , number_literal , (string_literal ""local_section_strategy"" " string_content ") ))) ;))) })) (expression_statement "p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18];" (assignment_expression "p_Var7 = (object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18]" identifier = (subscript_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object\n                   [0x18]" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object._vptr_Object" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.super_Object" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<32,_false>)" ( (comma_expression "object->super_Sized_relobj<32,_false" (binary_expression "object->super_Sized_relobj<32" (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_Var7 == gold::Relobj::do_output_section) {\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }\n          else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }" if (parenthesized_expression "(p_Var7 == gold::Relobj::do_output_section)" ( (ERROR "p_Var7 == gold::Relobj::" (binary_expression "p_Var7 == gold" identifier == identifier) : : identifier : :) identifier )) (compound_statement "{\n            ppOVar8 = (object->super_Sized_relobj<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            puVar1 = &ppOVar8[uVar11]->field_0xc8;\n            *puVar1 = *puVar1 | 1;\n          }" { (expression_statement "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start;" (field_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start" (field_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl" (binary_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std" (assignment_expression "ppOVar8 = (object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold" identifier = (binary_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                      super__Vector_base" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<32,_false>)" ( (comma_expression "object->super_Sized_relobj<32,_false" (binary_expression "object->super_Sized_relobj<32" (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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11) {\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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11)" ( (binary_expression "(ulong)((long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3) <= (ulong)uVar11" (call_expression "(ulong)((long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3)" ( (binary_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8 >> 3" (binary_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                              ._M_impl._M_finish - (long)ppOVar8" (field_expression "(long)(object->super_Sized_relobj<32,_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<32,_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<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold::Output_section*,_std" (binary_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base<gold" (cast_expression "(long)(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_.\n                              super__Vector_base" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj.output_sections_" (field_expression "(object->super_Sized_relobj<32,_false>).super_Relobj" (parenthesized_expression "(object->super_Sized_relobj<32,_false>)" ( (comma_expression "object->super_Sized_relobj<32,_false" (binary_expression "object->super_Sized_relobj<32" (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)ppOVar8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) >> number_literal) ))) <= (cast_expression "(ulong)uVar11" ( (type_descriptor "ulong" type_identifier) ) 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 "puVar1 = &ppOVar8[uVar11]->field_0xc8;" (assignment_expression "puVar1 = &ppOVar8[uVar11]->field_0xc8" identifier = (pointer_expression "&ppOVar8[uVar11]->field_0xc8" & (field_expression "ppOVar8[uVar11]->field_0xc8" (subscript_expression "ppOVar8[uVar11]" identifier [ identifier ]) -> field_identifier))) ;) (expression_statement "*puVar1 = *puVar1 | 1;" (assignment_expression "*puVar1 = *puVar1 | 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 | 1" (pointer_expression "*puVar1" * identifier) | number_literal)) ;) }) (else_clause "else {\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }" else (compound_statement "{\n            iVar12 = (*p_Var7)(object,(ulong)uVar11);\n            pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);\n            *pbVar2 = *pbVar2 | 1;\n          }" { (expression_statement "iVar12 = (*p_Var7)(object,(ulong)uVar11);" (assignment_expression "iVar12 = (*p_Var7)(object,(ulong)uVar11)" identifier = (call_expression "(*p_Var7)(object,(ulong)uVar11)" (parenthesized_expression "(*p_Var7)" ( (pointer_expression "*p_Var7" * identifier) )) (argument_list "(object,(ulong)uVar11)" ( identifier , (cast_expression "(ulong)uVar11" ( (type_descriptor "ulong" type_identifier) ) identifier) )))) ;) (expression_statement "pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200);" (assignment_expression "pbVar2 = (byte *)(CONCAT44(extraout_var,iVar12) + 200)" identifier = (cast_expression "(byte *)(CONCAT44(extraout_var,iVar12) + 200)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(CONCAT44(extraout_var,iVar12) + 200)" ( (binary_expression "CONCAT44(extraout_var,iVar12) + 200" (call_expression "CONCAT44(extraout_var,iVar12)" identifier (argument_list "(extraout_var,iVar12)" ( identifier , identifier ))) + number_literal) )))) ;) (expression_statement "*pbVar2 = *pbVar2 | 1;" (assignment_expression "*pbVar2 = *pbVar2 | 1" (pointer_expression "*pbVar2" * identifier) = (binary_expression "*pbVar2 | 1" (pointer_expression "*pbVar2" * identifier) | number_literal)) ;) }))) (expression_statement "local_39[0] = uVar13;" (assignment_expression "local_39[0] = uVar13" (subscript_expression "local_39[0]" identifier [ number_literal ]) = identifier) ;) (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) ))) ;)) (if_statement "if (uVar13 != '\b') goto LAB_0023bcd9;" if (parenthesized_expression "(uVar13 != '\b')" ( (binary_expression "uVar13 != '\b'" identifier != (char_literal "'\b'" ' escape_sequence ')) )) (goto_statement "goto LAB_0023bcd9;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }" else (compound_statement "{\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          std::vector<unsigned_char,_std::allocator<unsigned_char>_>::emplace_back<unsigned_char>\n                    (&rr->reloc_strategies_,local_39);\nLAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;\n        }" { (labeled_statement "LAB_0023bcc9:\n          local_39[0] = '\0';" statement_identifier : (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) ))) ;)) (labeled_statement "LAB_0023bcd9:\n          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;" statement_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 "sVar17 = sVar17 + 1;" (assignment_expression "sVar17 = sVar17 + 1" identifier = (binary_expression "sVar17 + 1" identifier + number_literal)) ;) (if_statement "if (reloc_count == sVar17) {\n          return;\n        }" if (parenthesized_expression "(reloc_count == sVar17)" ( (binary_expression "reloc_count == sVar17" identifier == identifier) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) })) (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 "sVar17 = sVar17 + 1;" (assignment_expression "sVar17 = sVar17 + 1" identifier = (binary_expression "sVar17 + 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) ))) ;)) }) while (parenthesized_expression "(reloc_count != sVar17)" ( (binary_expression "reloc_count != sVar17" identifier != identifier) )) ;) })) (return_statement "return;" return ;) })))
(translation_unit "void FUN_0023bbb0(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,\n                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,\n                 long param_12,ulong param_13)\n\n{\n  byte *pbVar1;\n  int *piVar2;\n  byte bVar3;\n  ushort uVar4;\n  int iVar5;\n  long *plVar6;\n  char cVar7;\n  uint uVar8;\n  long *plVar9;\n  uint uVar10;\n  long lVar11;\n  uint uVar12;\n  long lVar14;\n  char local_39 [9];\n  ulong uVar13;\n  \n  if (param_6 != 9) {\n                    \n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }\n  if (param_8 != 0) {\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }\n  return;\n}\n\n" (function_definition "void FUN_0023bbb0(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,\n                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,\n                 long param_12,ulong param_13)\n\n{\n  byte *pbVar1;\n  int *piVar2;\n  byte bVar3;\n  ushort uVar4;\n  int iVar5;\n  long *plVar6;\n  char cVar7;\n  uint uVar8;\n  long *plVar9;\n  uint uVar10;\n  long lVar11;\n  uint uVar12;\n  long lVar14;\n  char local_39 [9];\n  ulong uVar13;\n  \n  if (param_6 != 9) {\n                    \n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }\n  if (param_8 != 0) {\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }\n  return;\n}" primitive_type (function_declarator "FUN_0023bbb0(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,\n                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,\n                 long param_12,ulong param_13)" identifier (parameter_list "(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,\n                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,\n                 long param_12,ulong param_13)" ( (parameter_declaration "ulong param_1" type_identifier identifier) , (parameter_declaration "long *param_2" (sized_type_specifier "long" long) (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined8 param_3" type_identifier identifier) , (parameter_declaration "long *param_4" (sized_type_specifier "long" long) (pointer_declarator "*param_4" * identifier)) , (parameter_declaration "undefined4 param_5" type_identifier identifier) , (parameter_declaration "int param_6" primitive_type identifier) , (parameter_declaration "long param_7" (sized_type_specifier "long" long) identifier) , (parameter_declaration "long param_8" (sized_type_specifier "long" long) identifier) , (parameter_declaration "ulong param_9" type_identifier identifier) , (parameter_declaration "char param_10" primitive_type identifier) , (parameter_declaration "ulong param_11" type_identifier identifier) , (parameter_declaration "long param_12" (sized_type_specifier "long" long) identifier) , (parameter_declaration "ulong param_13" type_identifier identifier) ))) (compound_statement "{\n  byte *pbVar1;\n  int *piVar2;\n  byte bVar3;\n  ushort uVar4;\n  int iVar5;\n  long *plVar6;\n  char cVar7;\n  uint uVar8;\n  long *plVar9;\n  uint uVar10;\n  long lVar11;\n  uint uVar12;\n  long lVar14;\n  char local_39 [9];\n  ulong uVar13;\n  \n  if (param_6 != 9) {\n                    \n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }\n  if (param_8 != 0) {\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }\n  return;\n}" { (declaration "byte *pbVar1;" type_identifier (pointer_declarator "*pbVar1" * identifier) ;) (declaration "int *piVar2;" primitive_type (pointer_declarator "*piVar2" * identifier) ;) (declaration "byte bVar3;" type_identifier identifier ;) (declaration "ushort uVar4;" type_identifier identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "long *plVar6;" (sized_type_specifier "long" long) (pointer_declarator "*plVar6" * identifier) ;) (declaration "char cVar7;" primitive_type identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "long *plVar9;" (sized_type_specifier "long" long) (pointer_declarator "*plVar9" * identifier) ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "long lVar11;" (sized_type_specifier "long" long) identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "long lVar14;" (sized_type_specifier "long" long) identifier ;) (declaration "char local_39 [9];" primitive_type (array_declarator "local_39 [9]" identifier [ number_literal ]) ;) (declaration "ulong uVar13;" type_identifier identifier ;) (if_statement "if (param_6 != 9) {\n                    \n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }" if (parenthesized_expression "(param_6 != 9)" ( (binary_expression "param_6 != 9" identifier != number_literal) )) (compound_statement "{\n                    \n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }" { (expression_statement "FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");" (call_expression "FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs")" identifier (argument_list "("../../gold/arm.cc",0x2873,"scan_relocatable_relocs")" ( (string_literal ""../../gold/arm.cc"" " string_content ") , number_literal , (string_literal ""scan_relocatable_relocs"" " string_content ") ))) ;) })) (if_statement "if (param_8 != 0) {\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }" if (parenthesized_expression "(param_8 != 0)" ( (binary_expression "param_8 != 0" identifier != number_literal) )) (compound_statement "{\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }" { (expression_statement "lVar14 = 0;" (assignment_expression "lVar14 = 0" identifier = number_literal) ;) (do_statement "do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);" do (compound_statement "{\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    }" { (while_statement "while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }" while (parenthesized_expression "((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0')))" ( (parenthesized_expression "(param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))" ( (binary_expression "param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0')" (binary_expression "param_10 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) || (parenthesized_expression "(param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0')" ( (comma_expression "param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'" (assignment_expression "param_2 = param_4" identifier = identifier) , (comma_expression "param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'" (assignment_expression "param_1 = param_9" identifier = identifier) , (comma_expression "cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'" (assignment_expression "cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8))" identifier = (call_expression "FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8))" identifier (argument_list "(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8))" ( identifier , identifier , identifier , (pointer_expression "*(undefined4 *)(param_7 + lVar14 * 8)" * (cast_expression "(undefined4 *)(param_7 + lVar14 * 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_7 + lVar14 * 8)" ( (binary_expression "param_7 + lVar14 * 8" identifier + (binary_expression "lVar14 * 8" identifier * number_literal)) )))) )))) , (binary_expression "cVar7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))))) ))) )) )) (compound_statement "{\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }" { (expression_statement "uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);" (assignment_expression "uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8)" identifier = (pointer_expression "*(uint *)(param_7 + 4 + lVar14 * 8)" * (cast_expression "(uint *)(param_7 + 4 + lVar14 * 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_7 + 4 + lVar14 * 8)" ( (binary_expression "param_7 + 4 + lVar14 * 8" (binary_expression "param_7 + 4" identifier + number_literal) + (binary_expression "lVar14 * 8" identifier * number_literal)) ))))) ;) (expression_statement "uVar12 = uVar10 >> 8;" (assignment_expression "uVar12 = uVar10 >> 8" identifier = (binary_expression "uVar10 >> 8" identifier >> number_literal)) ;) (expression_statement "uVar13 = (ulong)uVar12;" (assignment_expression "uVar13 = (ulong)uVar12" identifier = (cast_expression "(ulong)uVar12" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (if_statement "if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }" if (parenthesized_expression "(uVar13 < param_11)" ( (binary_expression "uVar13 < param_11" identifier < identifier) )) (compound_statement "{\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }" { (if_statement "if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }" if (parenthesized_expression "(param_12 == 0)" ( (binary_expression "param_12 == 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 "lVar11 = (ulong)(uVar12 << 4) + param_12;" (assignment_expression "lVar11 = (ulong)(uVar12 << 4) + param_12" identifier = (binary_expression "(ulong)(uVar12 << 4) + param_12" (call_expression "(ulong)(uVar12 << 4)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 << 4)" ( (binary_expression "uVar12 << 4" identifier << number_literal) ))) + identifier)) ;) (expression_statement "uVar4 = *(ushort *)(lVar11 + 0xe);" (assignment_expression "uVar4 = *(ushort *)(lVar11 + 0xe)" identifier = (pointer_expression "*(ushort *)(lVar11 + 0xe)" * (cast_expression "(ushort *)(lVar11 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 0xe)" ( (binary_expression "lVar11 + 0xe" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = (uint)uVar4;" (assignment_expression "uVar8 = (uint)uVar4" identifier = (cast_expression "(uint)uVar4" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" if (parenthesized_expression "(uVar4 < 0xff00)" ( (binary_expression "uVar4 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" { (labeled_statement "LAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;" statement_identifier : (if_statement "if (uVar8 == 0) goto LAB_0023bc63;" if (parenthesized_expression "(uVar8 == 0)" ( (binary_expression "uVar8 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0023bc63;" goto statement_identifier ;))) (expression_statement "param_2 = (long *)param_4[10];" (assignment_expression "param_2 = (long *)param_4[10]" identifier = (cast_expression "(long *)param_4[10]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_4[10]" identifier [ number_literal ]))) ;) (expression_statement "param_1 = (ulong)uVar8;" (assignment_expression "param_1 = (ulong)uVar8" identifier = (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (if_statement "if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }" if (parenthesized_expression "((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1)" ( (binary_expression "(ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1" (call_expression "(ulong)(param_4[0xb] - (long)param_2 >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(param_4[0xb] - (long)param_2 >> 3)" ( (binary_expression "param_4[0xb] - (long)param_2 >> 3" (binary_expression "param_4[0xb] - (long)param_2" (subscript_expression "param_4[0xb]" identifier [ number_literal ]) - (cast_expression "(long)param_2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) >> number_literal) ))) <= 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 (param_2[param_1] == 0) break;" if (parenthesized_expression "(param_2[param_1] == 0)" ( (binary_expression "param_2[param_1] == 0" (subscript_expression "param_2[param_1]" identifier [ identifier ]) == number_literal) )) (break_statement "break;" break ;)) (expression_statement "bVar3 = *(byte *)(lVar11 + 0xc);" (assignment_expression "bVar3 = *(byte *)(lVar11 + 0xc)" identifier = (pointer_expression "*(byte *)(lVar11 + 0xc)" * (cast_expression "(byte *)(lVar11 + 0xc)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 0xc)" ( (binary_expression "lVar11 + 0xc" identifier + number_literal) ))))) ;) }) (else_clause "else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" else (compound_statement "{\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" { (if_statement "if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }" if (parenthesized_expression "(uVar4 == 0xffff)" ( (binary_expression "uVar4 == 0xffff" identifier == number_literal) )) (compound_statement "{\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }" { (expression_statement "param_1 = param_4[8];" (assignment_expression "param_1 = param_4[8]" identifier = (subscript_expression "param_4[8]" identifier [ number_literal ])) ;) (if_statement "if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }" { (expression_statement "param_1 = (**(code **)(*param_4 + 0xd8))(param_4);" (assignment_expression "param_1 = (**(code **)(*param_4 + 0xd8))(param_4)" identifier = (call_expression "(**(code **)(*param_4 + 0xd8))(param_4)" (parenthesized_expression "(**(code **)(*param_4 + 0xd8))" ( (pointer_expression "**(code **)(*param_4 + 0xd8)" * (pointer_expression "*(code **)(*param_4 + 0xd8)" * (cast_expression "(code **)(*param_4 + 0xd8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*param_4 + 0xd8)" ( (binary_expression "*param_4 + 0xd8" (pointer_expression "*param_4" * identifier) + number_literal) ))))) )) (argument_list "(param_4)" ( identifier )))) ;) (expression_statement "param_4[8] = param_1;" (assignment_expression "param_4[8] = param_1" (subscript_expression "param_4[8]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "param_2 = param_4;" (assignment_expression "param_2 = param_4" identifier = identifier) ;) (expression_statement "uVar8 = FUN_00392c60(param_1,param_4,uVar12);" (assignment_expression "uVar8 = FUN_00392c60(param_1,param_4,uVar12)" identifier = (call_expression "FUN_00392c60(param_1,param_4,uVar12)" identifier (argument_list "(param_1,param_4,uVar12)" ( identifier , identifier , identifier )))) ;) (goto_statement "goto LAB_0023bd7e;" goto statement_identifier ;) })) (labeled_statement "LAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);" statement_identifier : (expression_statement "bVar3 = *(byte *)(lVar11 + 0xc);" (assignment_expression "bVar3 = *(byte *)(lVar11 + 0xc)" identifier = (pointer_expression "*(byte *)(lVar11 + 0xc)" * (cast_expression "(byte *)(lVar11 + 0xc)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 0xc)" ( (binary_expression "lVar11 + 0xc" identifier + number_literal) ))))) ;)) }))) (if_statement "if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }" if (parenthesized_expression "((bVar3 & 0xf) != 3)" ( (binary_expression "(bVar3 & 0xf) != 3" (parenthesized_expression "(bVar3 & 0xf)" ( (binary_expression "bVar3 & 0xf" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }" { (if_statement "if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;" if (parenthesized_expression "(uVar12 == 0 && (uVar10 & 0xff) == 0)" ( (binary_expression "uVar12 == 0 && (uVar10 & 0xff) == 0" (binary_expression "uVar12 == 0" identifier == number_literal) && (binary_expression "(uVar10 & 0xff) == 0" (parenthesized_expression "(uVar10 & 0xff)" ( (binary_expression "uVar10 & 0xff" identifier & number_literal) )) == number_literal)) )) (break_statement "break;" break ;)) (if_statement "if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }" if (parenthesized_expression "((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13)" ( (binary_expression "(ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13" (call_expression "(ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555)" ( (binary_expression "(param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555" (parenthesized_expression "(param_4[0x2d] - param_4[0x2c] >> 3)" ( (binary_expression "param_4[0x2d] - param_4[0x2c] >> 3" (binary_expression "param_4[0x2d] - param_4[0x2c]" (subscript_expression "param_4[0x2d]" identifier [ number_literal ]) - (subscript_expression "param_4[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 "piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);" (assignment_expression "piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18)" identifier = (cast_expression "(int *)(param_4[0x2c] + uVar13 * 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4[0x2c] + uVar13 * 0x18)" ( (binary_expression "param_4[0x2c] + uVar13 * 0x18" (subscript_expression "param_4[0x2c]" identifier [ number_literal ]) + (binary_expression "uVar13 * 0x18" identifier * number_literal)) )))) ;) (expression_statement "iVar5 = *piVar2;" (assignment_expression "iVar5 = *piVar2" identifier = (pointer_expression "*piVar2" * identifier)) ;) (if_statement "if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }" if (parenthesized_expression "((iVar5 != 0) && (iVar5 != -2))" ( (binary_expression "(iVar5 != 0) && (iVar5 != -2)" (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar5 != -2)" ( (binary_expression "iVar5 != -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 "*piVar2 = -2;" (assignment_expression "*piVar2 = -2" (pointer_expression "*piVar2" * identifier) = number_literal) ;) (goto_statement "goto LAB_0023bcc9;" goto statement_identifier ;) })) (expression_statement "uVar10 = uVar10 & 0xff;" (assignment_expression "uVar10 = uVar10 & 0xff" identifier = (binary_expression "uVar10 & 0xff" identifier & number_literal)) ;) (if_statement "if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }" if (parenthesized_expression "((uVar10 == 0x26) || (uVar10 == 0x29))" ( (binary_expression "(uVar10 == 0x26) || (uVar10 == 0x29)" (parenthesized_expression "(uVar10 == 0x26)" ( (binary_expression "uVar10 == 0x26" identifier == number_literal) )) || (parenthesized_expression "(uVar10 == 0x29)" ( (binary_expression "uVar10 == 0x29" identifier == number_literal) ))) )) (compound_statement "{\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }" { (expression_statement "lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);" (assignment_expression "lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18)" identifier = (pointer_expression "*(long *)(PTR_DAT_0067cb08 + 0x18)" * (cast_expression "(long *)(PTR_DAT_0067cb08 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0067cb08 + 0x18)" ( (binary_expression "PTR_DAT_0067cb08 + 0x18" identifier + number_literal) ))))) ;) (if_statement "if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }" if (parenthesized_expression "(lVar11 == 0)" ( (binary_expression "lVar11 == 0" identifier == number_literal) )) (compound_statement "{\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }" { (expression_statement "FUN_00232220();" (call_expression "FUN_00232220()" identifier (argument_list "()" ( ))) ;) (if_statement "if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }" if (parenthesized_expression "(*(long *)(param_1 + 0x88) == 0)" ( (binary_expression "*(long *)(param_1 + 0x88) == 0" (pointer_expression "*(long *)(param_1 + 0x88)" * (cast_expression "(long *)(param_1 + 0x88)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }" { (expression_statement "FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");" (call_expression "FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations")" identifier (argument_list "("../../gold/nacl.h",0x90,"do_supported_emulations")" ( (string_literal ""../../gold/nacl.h"" " string_content ") , number_literal , (string_literal ""do_supported_emulations"" " string_content ") ))) ;) })) (if_statement "if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }" if (parenthesized_expression "(*(long *)(param_1 + 0x20) == 0)" ( (binary_expression "*(long *)(param_1 + 0x20) == 0" (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }" { (expression_statement "FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");" (call_expression "FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations")" identifier (argument_list "("../../gold/target-select.h",200,"do_supported_emulations")" ( (string_literal ""../../gold/target-select.h"" " string_content ") , number_literal , (string_literal ""do_supported_emulations"" " string_content ") ))) ;) })) (expression_statement "plVar9 = (long *)param_2[1];" (assignment_expression "plVar9 = (long *)param_2[1]" identifier = (cast_expression "(long *)param_2[1]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[1]" identifier [ number_literal ]))) ;) (expression_statement "plVar6 = (long *)param_2[2];" (assignment_expression "plVar6 = (long *)param_2[2]" identifier = (cast_expression "(long *)param_2[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[2]" identifier [ number_literal ]))) ;) (if_statement "if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }" if (parenthesized_expression "(plVar9 == plVar6)" ( (binary_expression "plVar9 == plVar6" identifier == identifier) )) (compound_statement "{\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }" { (expression_statement "FUN_001a5e80(param_2,plVar6,param_1 + 0x20);" (call_expression "FUN_001a5e80(param_2,plVar6,param_1 + 0x20)" identifier (argument_list "(param_2,plVar6,param_1 + 0x20)" ( identifier , identifier , (binary_expression "param_1 + 0x20" identifier + number_literal) ))) ;) (expression_statement "plVar9 = (long *)param_2[1];" (assignment_expression "plVar9 = (long *)param_2[1]" identifier = (cast_expression "(long *)param_2[1]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[1]" identifier [ number_literal ]))) ;) (if_statement "if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;" if (parenthesized_expression "(plVar9 == (long *)param_2[2])" ( (binary_expression "plVar9 == (long *)param_2[2]" identifier == (cast_expression "(long *)param_2[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[2]" identifier [ number_literal ]))) )) (goto_statement "goto LAB_0023c049;" goto statement_identifier ;)) }) (else_clause "else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }" else (compound_statement "{\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }" { (expression_statement "*plVar9 = *(long *)(param_1 + 0x20);" (assignment_expression "*plVar9 = *(long *)(param_1 + 0x20)" (pointer_expression "*plVar9" * identifier) = (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "plVar9 = plVar9 + 1;" (assignment_expression "plVar9 = plVar9 + 1" identifier = (binary_expression "plVar9 + 1" identifier + number_literal)) ;) (expression_statement "param_2[1] = (long)plVar9;" (assignment_expression "param_2[1] = (long)plVar9" (subscript_expression "param_2[1]" identifier [ number_literal ]) = (cast_expression "(long)plVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (if_statement "if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }" if (parenthesized_expression "(plVar9 == plVar6)" ( (binary_expression "plVar9 == plVar6" identifier == identifier) )) (compound_statement "{\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }" { (labeled_statement "LAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);" statement_identifier : (expression_statement "FUN_001a5e80(param_2,plVar9,param_1 + 0x88);" (call_expression "FUN_001a5e80(param_2,plVar9,param_1 + 0x88)" identifier (argument_list "(param_2,plVar9,param_1 + 0x88)" ( identifier , identifier , (binary_expression "param_1 + 0x88" identifier + number_literal) ))) ;)) (return_statement "return;" return ;) })) }))) (expression_statement "*plVar9 = *(long *)(param_1 + 0x88);" (assignment_expression "*plVar9 = *(long *)(param_1 + 0x88)" (pointer_expression "*plVar9" * identifier) = (pointer_expression "*(long *)(param_1 + 0x88)" * (cast_expression "(long *)(param_1 + 0x88)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) ))))) ;) (expression_statement "param_2[1] = (long)(plVar9 + 1);" (assignment_expression "param_2[1] = (long)(plVar9 + 1)" (subscript_expression "param_2[1]" identifier [ number_literal ]) = (cast_expression "(long)(plVar9 + 1)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(plVar9 + 1)" ( (binary_expression "plVar9 + 1" identifier + number_literal) )))) ;) (return_statement "return;" return ;) })) (if_statement "if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }" if (parenthesized_expression "((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0'))" ( (binary_expression "(*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')" (parenthesized_expression "(*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28)" ( (binary_expression "*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28" (pointer_expression "*(int *)(*(long *)(lVar11 + 8) + 8)" * (cast_expression "(int *)(*(long *)(lVar11 + 8) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(lVar11 + 8) + 8)" ( (binary_expression "*(long *)(lVar11 + 8) + 8" (pointer_expression "*(long *)(lVar11 + 8)" * (cast_expression "(long *)(lVar11 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 8)" ( (binary_expression "lVar11 + 8" identifier + number_literal) )))) + number_literal) )))) != number_literal) )) || (parenthesized_expression "(*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')" ( (binary_expression "*(char *)(*(long *)(lVar11 + 8) + 4) != '\0'" (pointer_expression "*(char *)(*(long *)(lVar11 + 8) + 4)" * (cast_expression "(char *)(*(long *)(lVar11 + 8) + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(lVar11 + 8) + 4)" ( (binary_expression "*(long *)(lVar11 + 8) + 4" (pointer_expression "*(long *)(lVar11 + 8)" * (cast_expression "(long *)(lVar11 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 8)" ( (binary_expression "lVar11 + 8" identifier + number_literal) )))) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }" { (expression_statement "FUN_00352af0("../../gold/arm.cc",0x988,"default_target");" (call_expression "FUN_00352af0("../../gold/arm.cc",0x988,"default_target")" identifier (argument_list "("../../gold/arm.cc",0x988,"default_target")" ( (string_literal ""../../gold/arm.cc"" " string_content ") , number_literal , (string_literal ""default_target"" " string_content ") ))) ;) })) (if_statement "if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" if (parenthesized_expression "(uVar10 == 0x26)" ( (binary_expression "uVar10 == 0x26" identifier == number_literal) )) (compound_statement "{\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }" { (expression_statement "uVar10 = *(uint *)(lVar11 + 0x130);" (assignment_expression "uVar10 = *(uint *)(lVar11 + 0x130)" identifier = (pointer_expression "*(uint *)(lVar11 + 0x130)" * (cast_expression "(uint *)(lVar11 + 0x130)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 0x130)" ( (binary_expression "lVar11 + 0x130" identifier + number_literal) ))))) ;) }) (else_clause "else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" else (if_statement "if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" if (parenthesized_expression "(uVar10 == 0x29)" ( (binary_expression "uVar10 == 0x29" identifier == number_literal) )) (compound_statement "{\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" { (expression_statement "uVar10 = *(uint *)(lVar11 + 0x134);" (assignment_expression "uVar10 = *(uint *)(lVar11 + 0x134)" identifier = (pointer_expression "*(uint *)(lVar11 + 0x134)" * (cast_expression "(uint *)(lVar11 + 0x134)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 0x134)" ( (binary_expression "lVar11 + 0x134" identifier + number_literal) ))))) ;) })))) })) (switch_statement "switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }" switch (parenthesized_expression "(uVar10)" ( identifier )) (compound_statement "{\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }" { (case_statement "case 0:" case number_literal :) (case_statement "case 0x28:" case number_literal :) (case_statement "case 0x5a:" case number_literal :) (case_statement "case 0x5b:" case number_literal :) (case_statement "case 0x5c:" case number_literal :) (case_statement "case 0x5d:" case number_literal :) (case_statement "case 99:" case number_literal :) (case_statement "case 100:" case number_literal :) (case_statement "case 0x65:" case number_literal :) (case_statement "case 0x81:" case number_literal :) (case_statement "case 0x82:\n            cVar7 = '\x02';\n            break;" case number_literal : (expression_statement "cVar7 = '\x02';" (assignment_expression "cVar7 = '\x02'" identifier = (char_literal "'\x02'" ' escape_sequence ')) ;) (break_statement "break;" break ;)) (case_statement "default:\n            cVar7 = '\t';\n            break;" default : (expression_statement "cVar7 = '\t';" (assignment_expression "cVar7 = '\t'" identifier = (char_literal "'\t'" ' escape_sequence ')) ;) (break_statement "break;" break ;)) (case_statement "case 2:" case number_literal :) (case_statement "case 3:" case number_literal :) (case_statement "case 9:" case number_literal :) (case_statement "case 0x18:" case number_literal :) (case_statement "case 0x19:" case number_literal :) (case_statement "case 0x1a:" case number_literal :) (case_statement "case 0x1f:" case number_literal :) (case_statement "case 0x37:" case number_literal :) (case_statement "case 0x38:" case number_literal :) (case_statement "case 0x5e:" case number_literal :) (case_statement "case 0x5f:" case number_literal :) (case_statement "case 0x60:" case number_literal :) (case_statement "case 0x68:" case number_literal :) (case_statement "case 0x69:" case number_literal :) (case_statement "case 0x6a:" case number_literal :) (case_statement "case 0x6b:" case number_literal :) (case_statement "case 0x6c:\n            cVar7 = '\a';\n            break;" case number_literal : (expression_statement "cVar7 = '\a';" (assignment_expression "cVar7 = '\a'" identifier = (char_literal "'\a'" ' escape_sequence ')) ;) (break_statement "break;" break ;)) (case_statement "case 0x26:" case number_literal :) (case_statement "case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");" case number_literal : (expression_statement "FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");" (call_expression "FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy")" identifier (argument_list "("../../gold/arm.cc",0x824,"local_section_strategy")" ( (string_literal ""../../gold/arm.cc"" " string_content ") , number_literal , (string_literal ""local_section_strategy"" " string_content ") ))) ;)) })) (if_statement "if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }" if (parenthesized_expression "(*(code **)(*param_4 + 0xc0) == FUN_001a5070)" ( (binary_expression "*(code **)(*param_4 + 0xc0) == FUN_001a5070" (pointer_expression "*(code **)(*param_4 + 0xc0)" * (cast_expression "(code **)(*param_4 + 0xc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*param_4 + 0xc0)" ( (binary_expression "*param_4 + 0xc0" (pointer_expression "*param_4" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }" { (if_statement "if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }" if (parenthesized_expression "((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8)" ( (binary_expression "(ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8" (call_expression "(ulong)(param_4[0xb] - param_4[10] >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(param_4[0xb] - param_4[10] >> 3)" ( (binary_expression "param_4[0xb] - param_4[10] >> 3" (binary_expression "param_4[0xb] - param_4[10]" (subscript_expression "param_4[0xb]" identifier [ number_literal ]) - (subscript_expression "param_4[10]" identifier [ number_literal ])) >> number_literal) ))) <= (cast_expression "(ulong)uVar8" ( (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 "pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);" (assignment_expression "pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200)" identifier = (cast_expression "(byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200)" ( (binary_expression "*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200" (pointer_expression "*(long *)(param_4[10] + (ulong)uVar8 * 8)" * (cast_expression "(long *)(param_4[10] + (ulong)uVar8 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4[10] + (ulong)uVar8 * 8)" ( (binary_expression "param_4[10] + (ulong)uVar8 * 8" (subscript_expression "param_4[10]" identifier [ number_literal ]) + (binary_expression "(ulong)uVar8 * 8" (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) )))) + number_literal) )))) ;) (expression_statement "*pbVar1 = *pbVar1 | 1;" (assignment_expression "*pbVar1 = *pbVar1 | 1" (pointer_expression "*pbVar1" * identifier) = (binary_expression "*pbVar1 | 1" (pointer_expression "*pbVar1" * identifier) | number_literal)) ;) }) (else_clause "else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }" else (compound_statement "{\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }" { (expression_statement "lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);" (assignment_expression "lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8)" identifier = (call_expression "(**(code **)(*param_4 + 0xc0))(param_4,uVar8)" (parenthesized_expression "(**(code **)(*param_4 + 0xc0))" ( (pointer_expression "**(code **)(*param_4 + 0xc0)" * (pointer_expression "*(code **)(*param_4 + 0xc0)" * (cast_expression "(code **)(*param_4 + 0xc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*param_4 + 0xc0)" ( (binary_expression "*param_4 + 0xc0" (pointer_expression "*param_4" * identifier) + number_literal) ))))) )) (argument_list "(param_4,uVar8)" ( identifier , identifier )))) ;) (expression_statement "*(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;" (assignment_expression "*(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1" (pointer_expression "*(byte *)(lVar11 + 200)" * (cast_expression "(byte *)(lVar11 + 200)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 200)" ( (binary_expression "lVar11 + 200" identifier + number_literal) )))) = (binary_expression "*(byte *)(lVar11 + 200) | 1" (pointer_expression "*(byte *)(lVar11 + 200)" * (cast_expression "(byte *)(lVar11 + 200)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + 200)" ( (binary_expression "lVar11 + 200" identifier + number_literal) )))) | number_literal)) ;) }))) (expression_statement "param_2 = (long *)local_39;" (assignment_expression "param_2 = (long *)local_39" identifier = (cast_expression "(long *)local_39" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "param_1 = param_13;" (assignment_expression "param_1 = param_13" identifier = identifier) ;) (expression_statement "local_39[0] = cVar7;" (assignment_expression "local_39[0] = cVar7" (subscript_expression "local_39[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "FUN_001a5c60();" (call_expression "FUN_001a5c60()" identifier (argument_list "()" ( ))) ;) (if_statement "if (cVar7 != '\b') goto LAB_0023bcd9;" if (parenthesized_expression "(cVar7 != '\b')" ( (binary_expression "cVar7 != '\b'" identifier != (char_literal "'\b'" ' escape_sequence ')) )) (goto_statement "goto LAB_0023bcd9;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }" else (compound_statement "{\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }" { (labeled_statement "LAB_0023bcc9:\n          local_39[0] = '\0';" statement_identifier : (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 ')) ;)) (expression_statement "param_2 = (long *)local_39;" (assignment_expression "param_2 = (long *)local_39" identifier = (cast_expression "(long *)local_39" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "param_1 = param_13;" (assignment_expression "param_1 = param_13" identifier = identifier) ;) (expression_statement "FUN_001a5c60();" (call_expression "FUN_001a5c60()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;" statement_identifier : (expression_statement "*(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;" (assignment_expression "*(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1" (pointer_expression "*(long *)(param_13 + 0x18)" * (cast_expression "(long *)(param_13 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_13 + 0x18)" ( (binary_expression "param_13 + 0x18" identifier + number_literal) )))) = (binary_expression "*(long *)(param_13 + 0x18) + 1" (pointer_expression "*(long *)(param_13 + 0x18)" * (cast_expression "(long *)(param_13 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_13 + 0x18)" ( (binary_expression "param_13 + 0x18" identifier + number_literal) )))) + number_literal)) ;)) }))) (expression_statement "lVar14 = lVar14 + 1;" (assignment_expression "lVar14 = lVar14 + 1" identifier = (binary_expression "lVar14 + 1" identifier + number_literal)) ;) (if_statement "if (param_8 == lVar14) {\n          return;\n        }" if (parenthesized_expression "(param_8 == lVar14)" ( (binary_expression "param_8 == lVar14" identifier == identifier) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) })) (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 "lVar14 = lVar14 + 1;" (assignment_expression "lVar14 = lVar14 + 1" identifier = (binary_expression "lVar14 + 1" identifier + number_literal)) ;) (expression_statement "param_2 = (long *)local_39;" (assignment_expression "param_2 = (long *)local_39" identifier = (cast_expression "(long *)local_39" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "param_1 = param_13;" (assignment_expression "param_1 = param_13" identifier = identifier) ;) (expression_statement "FUN_001a5c60();" (call_expression "FUN_001a5c60()" identifier (argument_list "()" ( ))) ;) }) while (parenthesized_expression "(param_8 != lVar14)" ( (binary_expression "param_8 != lVar14" identifier != identifier) )) ;) })) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (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 = IDENT) , (comma_expression (assignment_expression IDENT = IDENT) , (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) )))) , (binary_expression IDENT != (char_literal ' escape_sequence '))))) ))) )) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (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 IDENT << 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) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) >> LIT) ))) <= 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 (subscript_expression IDENT [ IDENT ]) == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (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 = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) )) (break_statement break ;)) (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) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == 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 (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (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 (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) ))) ;)) (return_statement return ;) })) }))) (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (return_statement return ;) })) (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 (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) != LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) != (char_literal ' escape_sequence ')) ))) )) (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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })))) })) (switch_statement switch (parenthesized_expression ( IDENT )) (compound_statement { (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (break_statement break ;)) (case_statement default : (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT : (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 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (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) )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) | LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * 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 IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (labeled_statement statement_identifier : (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)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (return_statement return ;) })) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (return_statement return ;) })))
(function_definition "void FUN_0023bbb0(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,\n                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,\n                 long param_12,ulong param_13)\n\n{\n  byte *pbVar1;\n  int *piVar2;\n  byte bVar3;\n  ushort uVar4;\n  int iVar5;\n  long *plVar6;\n  char cVar7;\n  uint uVar8;\n  long *plVar9;\n  uint uVar10;\n  long lVar11;\n  uint uVar12;\n  long lVar14;\n  char local_39 [9];\n  ulong uVar13;\n  \n  if (param_6 != 9) {\n                    \n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }\n  if (param_8 != 0) {\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }\n  return;\n}" (primitive_type "void") (function_declarator "FUN_0023bbb0(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,\n                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,\n                 long param_12,ulong param_13)" (identifier "FUN_0023bbb0") (parameter_list "(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,\n                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,\n                 long param_12,ulong param_13)" (( "(") (parameter_declaration "ulong param_1" (type_identifier "ulong") (identifier "param_1")) (, ",") (parameter_declaration "long *param_2" (sized_type_specifier "long" (long "long")) (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "undefined8 param_3" (type_identifier "undefined8") (identifier "param_3")) (, ",") (parameter_declaration "long *param_4" (sized_type_specifier "long" (long "long")) (pointer_declarator "*param_4" (* "*") (identifier "param_4"))) (, ",") (parameter_declaration "undefined4 param_5" (type_identifier "undefined4") (identifier "param_5")) (, ",") (parameter_declaration "int param_6" (primitive_type "int") (identifier "param_6")) (, ",") (parameter_declaration "long param_7" (sized_type_specifier "long" (long "long")) (identifier "param_7")) (, ",") (parameter_declaration "long param_8" (sized_type_specifier "long" (long "long")) (identifier "param_8")) (, ",") (parameter_declaration "ulong param_9" (type_identifier "ulong") (identifier "param_9")) (, ",") (parameter_declaration "char param_10" (primitive_type "char") (identifier "param_10")) (, ",") (parameter_declaration "ulong param_11" (type_identifier "ulong") (identifier "param_11")) (, ",") (parameter_declaration "long param_12" (sized_type_specifier "long" (long "long")) (identifier "param_12")) (, ",") (parameter_declaration "ulong param_13" (type_identifier "ulong") (identifier "param_13")) () ")"))) (compound_statement "{\n  byte *pbVar1;\n  int *piVar2;\n  byte bVar3;\n  ushort uVar4;\n  int iVar5;\n  long *plVar6;\n  char cVar7;\n  uint uVar8;\n  long *plVar9;\n  uint uVar10;\n  long lVar11;\n  uint uVar12;\n  long lVar14;\n  char local_39 [9];\n  ulong uVar13;\n  \n  if (param_6 != 9) {\n                    \n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }\n  if (param_8 != 0) {\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }\n  return;\n}" ({ "{") (declaration "byte *pbVar1;" (type_identifier "byte") (pointer_declarator "*pbVar1" (* "*") (identifier "pbVar1")) (; ";")) (declaration "int *piVar2;" (primitive_type "int") (pointer_declarator "*piVar2" (* "*") (identifier "piVar2")) (; ";")) (declaration "byte bVar3;" (type_identifier "byte") (identifier "bVar3") (; ";")) (declaration "ushort uVar4;" (type_identifier "ushort") (identifier "uVar4") (; ";")) (declaration "int iVar5;" (primitive_type "int") (identifier "iVar5") (; ";")) (declaration "long *plVar6;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar6" (* "*") (identifier "plVar6")) (; ";")) (declaration "char cVar7;" (primitive_type "char") (identifier "cVar7") (; ";")) (declaration "uint uVar8;" (type_identifier "uint") (identifier "uVar8") (; ";")) (declaration "long *plVar9;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar9" (* "*") (identifier "plVar9")) (; ";")) (declaration "uint uVar10;" (type_identifier "uint") (identifier "uVar10") (; ";")) (declaration "long lVar11;" (sized_type_specifier "long" (long "long")) (identifier "lVar11") (; ";")) (declaration "uint uVar12;" (type_identifier "uint") (identifier "uVar12") (; ";")) (declaration "long lVar14;" (sized_type_specifier "long" (long "long")) (identifier "lVar14") (; ";")) (declaration "char local_39 [9];" (primitive_type "char") (array_declarator "local_39 [9]" (identifier "local_39") ([ "[") (number_literal "9") (] "]")) (; ";")) (declaration "ulong uVar13;" (type_identifier "ulong") (identifier "uVar13") (; ";")) (if_statement "if (param_6 != 9) {\n                    \n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }" (if "if") (parenthesized_expression "(param_6 != 9)" (( "(") (binary_expression "param_6 != 9" (identifier "param_6") (!= "!=") (number_literal "9")) () ")")) (compound_statement "{\n                    \n    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");\n  }" ({ "{") (expression_statement "FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");" (call_expression "FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs")" (identifier "FUN_00352af0") (argument_list "("../../gold/arm.cc",0x2873,"scan_relocatable_relocs")" (( "(") (string_literal ""../../gold/arm.cc"" (" """) (string_content "../../gold/arm.cc") (" """)) (, ",") (number_literal "0x2873") (, ",") (string_literal ""scan_relocatable_relocs"" (" """) (string_content "scan_relocatable_relocs") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (param_8 != 0) {\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }" (if "if") (parenthesized_expression "(param_8 != 0)" (( "(") (binary_expression "param_8 != 0" (identifier "param_8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    lVar14 = 0;\n    do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);\n  }" ({ "{") (expression_statement "lVar14 = 0;" (assignment_expression "lVar14 = 0" (identifier "lVar14") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    } while (param_8 != lVar14);" (do "do") (compound_statement "{\n      while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }\n      local_39[0] = '\b';\n      lVar14 = lVar14 + 1;\n      param_2 = (long *)local_39;\n      param_1 = param_13;\n      FUN_001a5c60();\n    }" ({ "{") (while_statement "while ((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))) {\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }" (while "while") (parenthesized_expression "((param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0')))" (( "(") (parenthesized_expression "(param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'))" (( "(") (binary_expression "param_10 == '\0' ||\n             (param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0')" (binary_expression "param_10 == '\0'" (identifier "param_10") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (|| "||") (parenthesized_expression "(param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0')" (( "(") (comma_expression "param_2 = param_4, param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'" (assignment_expression "param_2 = param_4" (identifier "param_2") (= "=") (identifier "param_4")) (, ",") (comma_expression "param_1 = param_9,\n             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'" (assignment_expression "param_1 = param_9" (identifier "param_1") (= "=") (identifier "param_9")) (, ",") (comma_expression "cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),\n             cVar7 != '\0'" (assignment_expression "cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8))" (identifier "cVar7") (= "=") (call_expression "FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8))" (identifier "FUN_003cfe70") (argument_list "(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8))" (( "(") (identifier "param_9") (, ",") (identifier "param_4") (, ",") (identifier "param_5") (, ",") (pointer_expression "*(undefined4 *)(param_7 + lVar14 * 8)" (* "*") (cast_expression "(undefined4 *)(param_7 + lVar14 * 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_7 + lVar14 * 8)" (( "(") (binary_expression "param_7 + lVar14 * 8" (identifier "param_7") (+ "+") (binary_expression "lVar14 * 8" (identifier "lVar14") (* "*") (number_literal "8"))) () ")")))) () ")")))) (, ",") (binary_expression "cVar7 != '\0'" (identifier "cVar7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))))) () ")"))) () ")")) () ")")) (compound_statement "{\n        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);\n        uVar12 = uVar10 >> 8;\n        uVar13 = (ulong)uVar12;\n        if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }\n        lVar14 = lVar14 + 1;\n        if (param_8 == lVar14) {\n          return;\n        }\n      }" ({ "{") (expression_statement "uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);" (assignment_expression "uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8)" (identifier "uVar10") (= "=") (pointer_expression "*(uint *)(param_7 + 4 + lVar14 * 8)" (* "*") (cast_expression "(uint *)(param_7 + 4 + lVar14 * 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_7 + 4 + lVar14 * 8)" (( "(") (binary_expression "param_7 + 4 + lVar14 * 8" (binary_expression "param_7 + 4" (identifier "param_7") (+ "+") (number_literal "4")) (+ "+") (binary_expression "lVar14 * 8" (identifier "lVar14") (* "*") (number_literal "8"))) () ")"))))) (; ";")) (expression_statement "uVar12 = uVar10 >> 8;" (assignment_expression "uVar12 = uVar10 >> 8" (identifier "uVar12") (= "=") (binary_expression "uVar10 >> 8" (identifier "uVar10") (>> ">>") (number_literal "8"))) (; ";")) (expression_statement "uVar13 = (ulong)uVar12;" (assignment_expression "uVar13 = (ulong)uVar12" (identifier "uVar13") (= "=") (cast_expression "(ulong)uVar12" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar12"))) (; ";")) (if_statement "if (uVar13 < param_11) {\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }\n        else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }" (if "if") (parenthesized_expression "(uVar13 < param_11)" (( "(") (binary_expression "uVar13 < param_11" (identifier "uVar13") (< "<") (identifier "param_11")) () ")")) (compound_statement "{\n          if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }\n          lVar11 = (ulong)(uVar12 << 4) + param_12;\n          uVar4 = *(ushort *)(lVar11 + 0xe);\n          uVar8 = (uint)uVar4;\n          if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }\n          uVar10 = uVar10 & 0xff;\n          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }\n          switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }\n          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          local_39[0] = cVar7;\n          FUN_001a5c60();\n          if (cVar7 != '\b') goto LAB_0023bcd9;\n        }" ({ "{") (if_statement "if (param_12 == 0) {\n                    \n            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");\n          }" (if "if") (parenthesized_expression "(param_12 == 0)" (( "(") (binary_expression "param_12 == 0" (identifier "param_12") (== "==") (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 "lVar11 = (ulong)(uVar12 << 4) + param_12;" (assignment_expression "lVar11 = (ulong)(uVar12 << 4) + param_12" (identifier "lVar11") (= "=") (binary_expression "(ulong)(uVar12 << 4) + param_12" (call_expression "(ulong)(uVar12 << 4)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar12 << 4)" (( "(") (binary_expression "uVar12 << 4" (identifier "uVar12") (<< "<<") (number_literal "4")) () ")"))) (+ "+") (identifier "param_12"))) (; ";")) (expression_statement "uVar4 = *(ushort *)(lVar11 + 0xe);" (assignment_expression "uVar4 = *(ushort *)(lVar11 + 0xe)" (identifier "uVar4") (= "=") (pointer_expression "*(ushort *)(lVar11 + 0xe)" (* "*") (cast_expression "(ushort *)(lVar11 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar11 + 0xe)" (( "(") (binary_expression "lVar11 + 0xe" (identifier "lVar11") (+ "+") (number_literal "0xe")) () ")"))))) (; ";")) (expression_statement "uVar8 = (uint)uVar4;" (assignment_expression "uVar8 = (uint)uVar4" (identifier "uVar8") (= "=") (cast_expression "(uint)uVar4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar4"))) (; ";")) (if_statement "if (uVar4 < 0xff00) {\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }\n          else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" (if "if") (parenthesized_expression "(uVar4 < 0xff00)" (( "(") (binary_expression "uVar4 < 0xff00" (identifier "uVar4") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;\n            param_2 = (long *)param_4[10];\n            param_1 = (ulong)uVar8;\n            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }\n            if (param_2[param_1] == 0) break;\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" ({ "{") (labeled_statement "LAB_0023bd7e:\n            if (uVar8 == 0) goto LAB_0023bc63;" (statement_identifier "LAB_0023bd7e") (: ":") (if_statement "if (uVar8 == 0) goto LAB_0023bc63;" (if "if") (parenthesized_expression "(uVar8 == 0)" (( "(") (binary_expression "uVar8 == 0" (identifier "uVar8") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0023bc63;" (goto "goto") (statement_identifier "LAB_0023bc63") (; ";")))) (expression_statement "param_2 = (long *)param_4[10];" (assignment_expression "param_2 = (long *)param_4[10]" (identifier "param_2") (= "=") (cast_expression "(long *)param_4[10]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_4[10]" (identifier "param_4") ([ "[") (number_literal "10") (] "]")))) (; ";")) (expression_statement "param_1 = (ulong)uVar8;" (assignment_expression "param_1 = (ulong)uVar8" (identifier "param_1") (= "=") (cast_expression "(ulong)uVar8" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar8"))) (; ";")) (if_statement "if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {\n                    \n              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");\n            }" (if "if") (parenthesized_expression "((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1)" (( "(") (binary_expression "(ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1" (call_expression "(ulong)(param_4[0xb] - (long)param_2 >> 3)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(param_4[0xb] - (long)param_2 >> 3)" (( "(") (binary_expression "param_4[0xb] - (long)param_2 >> 3" (binary_expression "param_4[0xb] - (long)param_2" (subscript_expression "param_4[0xb]" (identifier "param_4") ([ "[") (number_literal "0xb") (] "]")) (- "-") (cast_expression "(long)param_2" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_2"))) (>> ">>") (number_literal "3")) () ")"))) (<= "<=") (identifier "param_1")) () ")")) (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 (param_2[param_1] == 0) break;" (if "if") (parenthesized_expression "(param_2[param_1] == 0)" (( "(") (binary_expression "param_2[param_1] == 0" (subscript_expression "param_2[param_1]" (identifier "param_2") ([ "[") (identifier "param_1") (] "]")) (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "bVar3 = *(byte *)(lVar11 + 0xc);" (assignment_expression "bVar3 = *(byte *)(lVar11 + 0xc)" (identifier "bVar3") (= "=") (pointer_expression "*(byte *)(lVar11 + 0xc)" (* "*") (cast_expression "(byte *)(lVar11 + 0xc)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar11 + 0xc)" (( "(") (binary_expression "lVar11 + 0xc" (identifier "lVar11") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" (else "else") (compound_statement "{\n            if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }\nLAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);\n          }" ({ "{") (if_statement "if (uVar4 == 0xffff) {\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }" (if "if") (parenthesized_expression "(uVar4 == 0xffff)" (( "(") (binary_expression "uVar4 == 0xffff" (identifier "uVar4") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n              param_1 = param_4[8];\n              if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }\n              param_2 = param_4;\n              uVar8 = FUN_00392c60(param_1,param_4,uVar12);\n              goto LAB_0023bd7e;\n            }" ({ "{") (expression_statement "param_1 = param_4[8];" (assignment_expression "param_1 = param_4[8]" (identifier "param_1") (= "=") (subscript_expression "param_4[8]" (identifier "param_4") ([ "[") (number_literal "8") (] "]"))) (; ";")) (if_statement "if (param_1 == 0) {\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }" (if "if") (parenthesized_expression "(param_1 == 0)" (( "(") (binary_expression "param_1 == 0" (identifier "param_1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);\n                param_4[8] = param_1;\n              }" ({ "{") (expression_statement "param_1 = (**(code **)(*param_4 + 0xd8))(param_4);" (assignment_expression "param_1 = (**(code **)(*param_4 + 0xd8))(param_4)" (identifier "param_1") (= "=") (call_expression "(**(code **)(*param_4 + 0xd8))(param_4)" (parenthesized_expression "(**(code **)(*param_4 + 0xd8))" (( "(") (pointer_expression "**(code **)(*param_4 + 0xd8)" (* "*") (pointer_expression "*(code **)(*param_4 + 0xd8)" (* "*") (cast_expression "(code **)(*param_4 + 0xd8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*param_4 + 0xd8)" (( "(") (binary_expression "*param_4 + 0xd8" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (+ "+") (number_literal "0xd8")) () ")"))))) () ")")) (argument_list "(param_4)" (( "(") (identifier "param_4") () ")")))) (; ";")) (expression_statement "param_4[8] = param_1;" (assignment_expression "param_4[8] = param_1" (subscript_expression "param_4[8]" (identifier "param_4") ([ "[") (number_literal "8") (] "]")) (= "=") (identifier "param_1")) (; ";")) (} "}"))) (expression_statement "param_2 = param_4;" (assignment_expression "param_2 = param_4" (identifier "param_2") (= "=") (identifier "param_4")) (; ";")) (expression_statement "uVar8 = FUN_00392c60(param_1,param_4,uVar12);" (assignment_expression "uVar8 = FUN_00392c60(param_1,param_4,uVar12)" (identifier "uVar8") (= "=") (call_expression "FUN_00392c60(param_1,param_4,uVar12)" (identifier "FUN_00392c60") (argument_list "(param_1,param_4,uVar12)" (( "(") (identifier "param_1") (, ",") (identifier "param_4") (, ",") (identifier "uVar12") () ")")))) (; ";")) (goto_statement "goto LAB_0023bd7e;" (goto "goto") (statement_identifier "LAB_0023bd7e") (; ";")) (} "}"))) (labeled_statement "LAB_0023bc63:\n            bVar3 = *(byte *)(lVar11 + 0xc);" (statement_identifier "LAB_0023bc63") (: ":") (expression_statement "bVar3 = *(byte *)(lVar11 + 0xc);" (assignment_expression "bVar3 = *(byte *)(lVar11 + 0xc)" (identifier "bVar3") (= "=") (pointer_expression "*(byte *)(lVar11 + 0xc)" (* "*") (cast_expression "(byte *)(lVar11 + 0xc)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar11 + 0xc)" (( "(") (binary_expression "lVar11 + 0xc" (identifier "lVar11") (+ "+") (number_literal "0xc")) () ")"))))) (; ";"))) (} "}")))) (if_statement "if ((bVar3 & 0xf) != 3) {\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }" (if "if") (parenthesized_expression "((bVar3 & 0xf) != 3)" (( "(") (binary_expression "(bVar3 & 0xf) != 3" (parenthesized_expression "(bVar3 & 0xf)" (( "(") (binary_expression "bVar3 & 0xf" (identifier "bVar3") (& "&") (number_literal "0xf")) () ")")) (!= "!=") (number_literal "3")) () ")")) (compound_statement "{\n            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;\n            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }\n            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);\n            iVar5 = *piVar2;\n            if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }\n            *piVar2 = -2;\n            goto LAB_0023bcc9;\n          }" ({ "{") (if_statement "if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;" (if "if") (parenthesized_expression "(uVar12 == 0 && (uVar10 & 0xff) == 0)" (( "(") (binary_expression "uVar12 == 0 && (uVar10 & 0xff) == 0" (binary_expression "uVar12 == 0" (identifier "uVar12") (== "==") (number_literal "0")) (&& "&&") (binary_expression "(uVar10 & 0xff) == 0" (parenthesized_expression "(uVar10 & 0xff)" (( "(") (binary_expression "uVar10 & 0xff" (identifier "uVar10") (& "&") (number_literal "0xff")) () ")")) (== "==") (number_literal "0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (if_statement "if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {\n                    \n              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");\n            }" (if "if") (parenthesized_expression "((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13)" (( "(") (binary_expression "(ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13" (call_expression "(ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555)" (( "(") (binary_expression "(param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555" (parenthesized_expression "(param_4[0x2d] - param_4[0x2c] >> 3)" (( "(") (binary_expression "param_4[0x2d] - param_4[0x2c] >> 3" (binary_expression "param_4[0x2d] - param_4[0x2c]" (subscript_expression "param_4[0x2d]" (identifier "param_4") ([ "[") (number_literal "0x2d") (] "]")) (- "-") (subscript_expression "param_4[0x2c]" (identifier "param_4") ([ "[") (number_literal "0x2c") (] "]"))) (>> ">>") (number_literal "3")) () ")")) (* "*") (number_literal "-0x5555555555555555")) () ")"))) (<= "<=") (identifier "uVar13")) () ")")) (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 "piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);" (assignment_expression "piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18)" (identifier "piVar2") (= "=") (cast_expression "(int *)(param_4[0x2c] + uVar13 * 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4[0x2c] + uVar13 * 0x18)" (( "(") (binary_expression "param_4[0x2c] + uVar13 * 0x18" (subscript_expression "param_4[0x2c]" (identifier "param_4") ([ "[") (number_literal "0x2c") (] "]")) (+ "+") (binary_expression "uVar13 * 0x18" (identifier "uVar13") (* "*") (number_literal "0x18"))) () ")")))) (; ";")) (expression_statement "iVar5 = *piVar2;" (assignment_expression "iVar5 = *piVar2" (identifier "iVar5") (= "=") (pointer_expression "*piVar2" (* "*") (identifier "piVar2"))) (; ";")) (if_statement "if ((iVar5 != 0) && (iVar5 != -2)) {\n                    \n              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");\n            }" (if "if") (parenthesized_expression "((iVar5 != 0) && (iVar5 != -2))" (( "(") (binary_expression "(iVar5 != 0) && (iVar5 != -2)" (parenthesized_expression "(iVar5 != 0)" (( "(") (binary_expression "iVar5 != 0" (identifier "iVar5") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar5 != -2)" (( "(") (binary_expression "iVar5 != -2" (identifier "iVar5") (!= "!=") (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 "*piVar2 = -2;" (assignment_expression "*piVar2 = -2" (pointer_expression "*piVar2" (* "*") (identifier "piVar2")) (= "=") (number_literal "-2")) (; ";")) (goto_statement "goto LAB_0023bcc9;" (goto "goto") (statement_identifier "LAB_0023bcc9") (; ";")) (} "}"))) (expression_statement "uVar10 = uVar10 & 0xff;" (assignment_expression "uVar10 = uVar10 & 0xff" (identifier "uVar10") (= "=") (binary_expression "uVar10 & 0xff" (identifier "uVar10") (& "&") (number_literal "0xff"))) (; ";")) (if_statement "if ((uVar10 == 0x26) || (uVar10 == 0x29)) {\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }" (if "if") (parenthesized_expression "((uVar10 == 0x26) || (uVar10 == 0x29))" (( "(") (binary_expression "(uVar10 == 0x26) || (uVar10 == 0x29)" (parenthesized_expression "(uVar10 == 0x26)" (( "(") (binary_expression "uVar10 == 0x26" (identifier "uVar10") (== "==") (number_literal "0x26")) () ")")) (|| "||") (parenthesized_expression "(uVar10 == 0x29)" (( "(") (binary_expression "uVar10 == 0x29" (identifier "uVar10") (== "==") (number_literal "0x29")) () ")"))) () ")")) (compound_statement "{\n            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);\n            if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }\n            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }\n            if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }\n          }" ({ "{") (expression_statement "lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);" (assignment_expression "lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18)" (identifier "lVar11") (= "=") (pointer_expression "*(long *)(PTR_DAT_0067cb08 + 0x18)" (* "*") (cast_expression "(long *)(PTR_DAT_0067cb08 + 0x18)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_0067cb08 + 0x18)" (( "(") (binary_expression "PTR_DAT_0067cb08 + 0x18" (identifier "PTR_DAT_0067cb08") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (if_statement "if (lVar11 == 0) {\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }" (if "if") (parenthesized_expression "(lVar11 == 0)" (( "(") (binary_expression "lVar11 == 0" (identifier "lVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              FUN_00232220();\n              if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }\n              if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }\n              plVar9 = (long *)param_2[1];\n              plVar6 = (long *)param_2[2];\n              if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }\n              *plVar9 = *(long *)(param_1 + 0x88);\n              param_2[1] = (long)(plVar9 + 1);\n              return;\n            }" ({ "{") (expression_statement "FUN_00232220();" (call_expression "FUN_00232220()" (identifier "FUN_00232220") (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (*(long *)(param_1 + 0x88) == 0) {\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }" (if "if") (parenthesized_expression "(*(long *)(param_1 + 0x88) == 0)" (( "(") (binary_expression "*(long *)(param_1 + 0x88) == 0" (pointer_expression "*(long *)(param_1 + 0x88)" (* "*") (cast_expression "(long *)(param_1 + 0x88)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x88)" (( "(") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");\n              }" ({ "{") (expression_statement "FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");" (call_expression "FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations")" (identifier "FUN_00352af0") (argument_list "("../../gold/nacl.h",0x90,"do_supported_emulations")" (( "(") (string_literal ""../../gold/nacl.h"" (" """) (string_content "../../gold/nacl.h") (" """)) (, ",") (number_literal "0x90") (, ",") (string_literal ""do_supported_emulations"" (" """) (string_content "do_supported_emulations") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (*(long *)(param_1 + 0x20) == 0) {\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }" (if "if") (parenthesized_expression "(*(long *)(param_1 + 0x20) == 0)" (( "(") (binary_expression "*(long *)(param_1 + 0x20) == 0" (pointer_expression "*(long *)(param_1 + 0x20)" (* "*") (cast_expression "(long *)(param_1 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");\n              }" ({ "{") (expression_statement "FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");" (call_expression "FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations")" (identifier "FUN_00352af0") (argument_list "("../../gold/target-select.h",200,"do_supported_emulations")" (( "(") (string_literal ""../../gold/target-select.h"" (" """) (string_content "../../gold/target-select.h") (" """)) (, ",") (number_literal "200") (, ",") (string_literal ""do_supported_emulations"" (" """) (string_content "do_supported_emulations") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "plVar9 = (long *)param_2[1];" (assignment_expression "plVar9 = (long *)param_2[1]" (identifier "plVar9") (= "=") (cast_expression "(long *)param_2[1]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "plVar6 = (long *)param_2[2];" (assignment_expression "plVar6 = (long *)param_2[2]" (identifier "plVar6") (= "=") (cast_expression "(long *)param_2[2]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_2[2]" (identifier "param_2") ([ "[") (number_literal "2") (] "]")))) (; ";")) (if_statement "if (plVar9 == plVar6) {\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }\n              else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }" (if "if") (parenthesized_expression "(plVar9 == plVar6)" (( "(") (binary_expression "plVar9 == plVar6" (identifier "plVar9") (== "==") (identifier "plVar6")) () ")")) (compound_statement "{\n                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);\n                plVar9 = (long *)param_2[1];\n                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;\n              }" ({ "{") (expression_statement "FUN_001a5e80(param_2,plVar6,param_1 + 0x20);" (call_expression "FUN_001a5e80(param_2,plVar6,param_1 + 0x20)" (identifier "FUN_001a5e80") (argument_list "(param_2,plVar6,param_1 + 0x20)" (( "(") (identifier "param_2") (, ",") (identifier "plVar6") (, ",") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")"))) (; ";")) (expression_statement "plVar9 = (long *)param_2[1];" (assignment_expression "plVar9 = (long *)param_2[1]" (identifier "plVar9") (= "=") (cast_expression "(long *)param_2[1]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]")))) (; ";")) (if_statement "if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;" (if "if") (parenthesized_expression "(plVar9 == (long *)param_2[2])" (( "(") (binary_expression "plVar9 == (long *)param_2[2]" (identifier "plVar9") (== "==") (cast_expression "(long *)param_2[2]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_2[2]" (identifier "param_2") ([ "[") (number_literal "2") (] "]")))) () ")")) (goto_statement "goto LAB_0023c049;" (goto "goto") (statement_identifier "LAB_0023c049") (; ";"))) (} "}")) (else_clause "else {\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }" (else "else") (compound_statement "{\n                *plVar9 = *(long *)(param_1 + 0x20);\n                plVar9 = plVar9 + 1;\n                param_2[1] = (long)plVar9;\n                if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }\n              }" ({ "{") (expression_statement "*plVar9 = *(long *)(param_1 + 0x20);" (assignment_expression "*plVar9 = *(long *)(param_1 + 0x20)" (pointer_expression "*plVar9" (* "*") (identifier "plVar9")) (= "=") (pointer_expression "*(long *)(param_1 + 0x20)" (* "*") (cast_expression "(long *)(param_1 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (expression_statement "plVar9 = plVar9 + 1;" (assignment_expression "plVar9 = plVar9 + 1" (identifier "plVar9") (= "=") (binary_expression "plVar9 + 1" (identifier "plVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "param_2[1] = (long)plVar9;" (assignment_expression "param_2[1] = (long)plVar9" (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(long)plVar9" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "plVar9"))) (; ";")) (if_statement "if (plVar9 == plVar6) {\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }" (if "if") (parenthesized_expression "(plVar9 == plVar6)" (( "(") (binary_expression "plVar9 == plVar6" (identifier "plVar9") (== "==") (identifier "plVar6")) () ")")) (compound_statement "{\nLAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);\n                  return;\n                }" ({ "{") (labeled_statement "LAB_0023c049:\n                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);" (statement_identifier "LAB_0023c049") (: ":") (expression_statement "FUN_001a5e80(param_2,plVar9,param_1 + 0x88);" (call_expression "FUN_001a5e80(param_2,plVar9,param_1 + 0x88)" (identifier "FUN_001a5e80") (argument_list "(param_2,plVar9,param_1 + 0x88)" (( "(") (identifier "param_2") (, ",") (identifier "plVar9") (, ",") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")"))) (; ";"))) (return_statement "return;" (return "return") (; ";")) (} "}"))) (} "}")))) (expression_statement "*plVar9 = *(long *)(param_1 + 0x88);" (assignment_expression "*plVar9 = *(long *)(param_1 + 0x88)" (pointer_expression "*plVar9" (* "*") (identifier "plVar9")) (= "=") (pointer_expression "*(long *)(param_1 + 0x88)" (* "*") (cast_expression "(long *)(param_1 + 0x88)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x88)" (( "(") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")"))))) (; ";")) (expression_statement "param_2[1] = (long)(plVar9 + 1);" (assignment_expression "param_2[1] = (long)(plVar9 + 1)" (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(long)(plVar9 + 1)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (parenthesized_expression "(plVar9 + 1)" (( "(") (binary_expression "plVar9 + 1" (identifier "plVar9") (+ "+") (number_literal "1")) () ")")))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (if_statement "if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }" (if "if") (parenthesized_expression "((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0'))" (( "(") (binary_expression "(*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||\n               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')" (parenthesized_expression "(*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28)" (( "(") (binary_expression "*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28" (pointer_expression "*(int *)(*(long *)(lVar11 + 8) + 8)" (* "*") (cast_expression "(int *)(*(long *)(lVar11 + 8) + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(lVar11 + 8) + 8)" (( "(") (binary_expression "*(long *)(lVar11 + 8) + 8" (pointer_expression "*(long *)(lVar11 + 8)" (* "*") (cast_expression "(long *)(lVar11 + 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar11 + 8)" (( "(") (binary_expression "lVar11 + 8" (identifier "lVar11") (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "8")) () ")")))) (!= "!=") (number_literal "0x28")) () ")")) (|| "||") (parenthesized_expression "(*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')" (( "(") (binary_expression "*(char *)(*(long *)(lVar11 + 8) + 4) != '\0'" (pointer_expression "*(char *)(*(long *)(lVar11 + 8) + 4)" (* "*") (cast_expression "(char *)(*(long *)(lVar11 + 8) + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(lVar11 + 8) + 4)" (( "(") (binary_expression "*(long *)(lVar11 + 8) + 4" (pointer_expression "*(long *)(lVar11 + 8)" (* "*") (cast_expression "(long *)(lVar11 + 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar11 + 8)" (( "(") (binary_expression "lVar11 + 8" (identifier "lVar11") (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "4")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                    \n              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");\n            }" ({ "{") (expression_statement "FUN_00352af0("../../gold/arm.cc",0x988,"default_target");" (call_expression "FUN_00352af0("../../gold/arm.cc",0x988,"default_target")" (identifier "FUN_00352af0") (argument_list "("../../gold/arm.cc",0x988,"default_target")" (( "(") (string_literal ""../../gold/arm.cc"" (" """) (string_content "../../gold/arm.cc") (" """)) (, ",") (number_literal "0x988") (, ",") (string_literal ""default_target"" (" """) (string_content "default_target") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (uVar10 == 0x26) {\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }\n            else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" (if "if") (parenthesized_expression "(uVar10 == 0x26)" (( "(") (binary_expression "uVar10 == 0x26" (identifier "uVar10") (== "==") (number_literal "0x26")) () ")")) (compound_statement "{\n              uVar10 = *(uint *)(lVar11 + 0x130);\n            }" ({ "{") (expression_statement "uVar10 = *(uint *)(lVar11 + 0x130);" (assignment_expression "uVar10 = *(uint *)(lVar11 + 0x130)" (identifier "uVar10") (= "=") (pointer_expression "*(uint *)(lVar11 + 0x130)" (* "*") (cast_expression "(uint *)(lVar11 + 0x130)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar11 + 0x130)" (( "(") (binary_expression "lVar11 + 0x130" (identifier "lVar11") (+ "+") (number_literal "0x130")) () ")"))))) (; ";")) (} "}")) (else_clause "else if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" (else "else") (if_statement "if (uVar10 == 0x29) {\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" (if "if") (parenthesized_expression "(uVar10 == 0x29)" (( "(") (binary_expression "uVar10 == 0x29" (identifier "uVar10") (== "==") (number_literal "0x29")) () ")")) (compound_statement "{\n              uVar10 = *(uint *)(lVar11 + 0x134);\n            }" ({ "{") (expression_statement "uVar10 = *(uint *)(lVar11 + 0x134);" (assignment_expression "uVar10 = *(uint *)(lVar11 + 0x134)" (identifier "uVar10") (= "=") (pointer_expression "*(uint *)(lVar11 + 0x134)" (* "*") (cast_expression "(uint *)(lVar11 + 0x134)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar11 + 0x134)" (( "(") (binary_expression "lVar11 + 0x134" (identifier "lVar11") (+ "+") (number_literal "0x134")) () ")"))))) (; ";")) (} "}"))))) (} "}"))) (switch_statement "switch(uVar10) {\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }" (switch "switch") (parenthesized_expression "(uVar10)" (( "(") (identifier "uVar10") () ")")) (compound_statement "{\n          case 0:\n          case 0x28:\n          case 0x5a:\n          case 0x5b:\n          case 0x5c:\n          case 0x5d:\n          case 99:\n          case 100:\n          case 0x65:\n          case 0x81:\n          case 0x82:\n            cVar7 = '\x02';\n            break;\n          default:\n            cVar7 = '\t';\n            break;\n          case 2:\n          case 3:\n          case 9:\n          case 0x18:\n          case 0x19:\n          case 0x1a:\n          case 0x1f:\n          case 0x37:\n          case 0x38:\n          case 0x5e:\n          case 0x5f:\n          case 0x60:\n          case 0x68:\n          case 0x69:\n          case 0x6a:\n          case 0x6b:\n          case 0x6c:\n            cVar7 = '\a';\n            break;\n          case 0x26:\n          case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");\n          }" ({ "{") (case_statement "case 0:" (case "case") (number_literal "0") (: ":")) (case_statement "case 0x28:" (case "case") (number_literal "0x28") (: ":")) (case_statement "case 0x5a:" (case "case") (number_literal "0x5a") (: ":")) (case_statement "case 0x5b:" (case "case") (number_literal "0x5b") (: ":")) (case_statement "case 0x5c:" (case "case") (number_literal "0x5c") (: ":")) (case_statement "case 0x5d:" (case "case") (number_literal "0x5d") (: ":")) (case_statement "case 99:" (case "case") (number_literal "99") (: ":")) (case_statement "case 100:" (case "case") (number_literal "100") (: ":")) (case_statement "case 0x65:" (case "case") (number_literal "0x65") (: ":")) (case_statement "case 0x81:" (case "case") (number_literal "0x81") (: ":")) (case_statement "case 0x82:\n            cVar7 = '\x02';\n            break;" (case "case") (number_literal "0x82") (: ":") (expression_statement "cVar7 = '\x02';" (assignment_expression "cVar7 = '\x02'" (identifier "cVar7") (= "=") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "default:\n            cVar7 = '\t';\n            break;" (default "default") (: ":") (expression_statement "cVar7 = '\t';" (assignment_expression "cVar7 = '\t'" (identifier "cVar7") (= "=") (char_literal "'\t'" (' "'") (escape_sequence "\t") (' "'"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 2:" (case "case") (number_literal "2") (: ":")) (case_statement "case 3:" (case "case") (number_literal "3") (: ":")) (case_statement "case 9:" (case "case") (number_literal "9") (: ":")) (case_statement "case 0x18:" (case "case") (number_literal "0x18") (: ":")) (case_statement "case 0x19:" (case "case") (number_literal "0x19") (: ":")) (case_statement "case 0x1a:" (case "case") (number_literal "0x1a") (: ":")) (case_statement "case 0x1f:" (case "case") (number_literal "0x1f") (: ":")) (case_statement "case 0x37:" (case "case") (number_literal "0x37") (: ":")) (case_statement "case 0x38:" (case "case") (number_literal "0x38") (: ":")) (case_statement "case 0x5e:" (case "case") (number_literal "0x5e") (: ":")) (case_statement "case 0x5f:" (case "case") (number_literal "0x5f") (: ":")) (case_statement "case 0x60:" (case "case") (number_literal "0x60") (: ":")) (case_statement "case 0x68:" (case "case") (number_literal "0x68") (: ":")) (case_statement "case 0x69:" (case "case") (number_literal "0x69") (: ":")) (case_statement "case 0x6a:" (case "case") (number_literal "0x6a") (: ":")) (case_statement "case 0x6b:" (case "case") (number_literal "0x6b") (: ":")) (case_statement "case 0x6c:\n            cVar7 = '\a';\n            break;" (case "case") (number_literal "0x6c") (: ":") (expression_statement "cVar7 = '\a';" (assignment_expression "cVar7 = '\a'" (identifier "cVar7") (= "=") (char_literal "'\a'" (' "'") (escape_sequence "\a") (' "'"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x26:" (case "case") (number_literal "0x26") (: ":")) (case_statement "case 0x29:\n                    \n            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");" (case "case") (number_literal "0x29") (: ":") (expression_statement "FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");" (call_expression "FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy")" (identifier "FUN_00352af0") (argument_list "("../../gold/arm.cc",0x824,"local_section_strategy")" (( "(") (string_literal ""../../gold/arm.cc"" (" """) (string_content "../../gold/arm.cc") (" """)) (, ",") (number_literal "0x824") (, ",") (string_literal ""local_section_strategy"" (" """) (string_content "local_section_strategy") (" """)) () ")"))) (; ";"))) (} "}"))) (if_statement "if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }\n          else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }" (if "if") (parenthesized_expression "(*(code **)(*param_4 + 0xc0) == FUN_001a5070)" (( "(") (binary_expression "*(code **)(*param_4 + 0xc0) == FUN_001a5070" (pointer_expression "*(code **)(*param_4 + 0xc0)" (* "*") (cast_expression "(code **)(*param_4 + 0xc0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*param_4 + 0xc0)" (( "(") (binary_expression "*param_4 + 0xc0" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (+ "+") (number_literal "0xc0")) () ")")))) (== "==") (identifier "FUN_001a5070")) () ")")) (compound_statement "{\n            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }\n            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);\n            *pbVar1 = *pbVar1 | 1;\n          }" ({ "{") (if_statement "if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {\n                    \n              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");\n            }" (if "if") (parenthesized_expression "((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8)" (( "(") (binary_expression "(ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8" (call_expression "(ulong)(param_4[0xb] - param_4[10] >> 3)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(param_4[0xb] - param_4[10] >> 3)" (( "(") (binary_expression "param_4[0xb] - param_4[10] >> 3" (binary_expression "param_4[0xb] - param_4[10]" (subscript_expression "param_4[0xb]" (identifier "param_4") ([ "[") (number_literal "0xb") (] "]")) (- "-") (subscript_expression "param_4[10]" (identifier "param_4") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "3")) () ")"))) (<= "<=") (cast_expression "(ulong)uVar8" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar8"))) () ")")) (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 "pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);" (assignment_expression "pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200)" (identifier "pbVar1") (= "=") (cast_expression "(byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200)" (( "(") (binary_expression "*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200" (pointer_expression "*(long *)(param_4[10] + (ulong)uVar8 * 8)" (* "*") (cast_expression "(long *)(param_4[10] + (ulong)uVar8 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4[10] + (ulong)uVar8 * 8)" (( "(") (binary_expression "param_4[10] + (ulong)uVar8 * 8" (subscript_expression "param_4[10]" (identifier "param_4") ([ "[") (number_literal "10") (] "]")) (+ "+") (binary_expression "(ulong)uVar8 * 8" (cast_expression "(ulong)uVar8" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar8")) (* "*") (number_literal "8"))) () ")")))) (+ "+") (number_literal "200")) () ")")))) (; ";")) (expression_statement "*pbVar1 = *pbVar1 | 1;" (assignment_expression "*pbVar1 = *pbVar1 | 1" (pointer_expression "*pbVar1" (* "*") (identifier "pbVar1")) (= "=") (binary_expression "*pbVar1 | 1" (pointer_expression "*pbVar1" (* "*") (identifier "pbVar1")) (| "|") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }" (else "else") (compound_statement "{\n            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);\n            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;\n          }" ({ "{") (expression_statement "lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);" (assignment_expression "lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8)" (identifier "lVar11") (= "=") (call_expression "(**(code **)(*param_4 + 0xc0))(param_4,uVar8)" (parenthesized_expression "(**(code **)(*param_4 + 0xc0))" (( "(") (pointer_expression "**(code **)(*param_4 + 0xc0)" (* "*") (pointer_expression "*(code **)(*param_4 + 0xc0)" (* "*") (cast_expression "(code **)(*param_4 + 0xc0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*param_4 + 0xc0)" (( "(") (binary_expression "*param_4 + 0xc0" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (+ "+") (number_literal "0xc0")) () ")"))))) () ")")) (argument_list "(param_4,uVar8)" (( "(") (identifier "param_4") (, ",") (identifier "uVar8") () ")")))) (; ";")) (expression_statement "*(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;" (assignment_expression "*(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1" (pointer_expression "*(byte *)(lVar11 + 200)" (* "*") (cast_expression "(byte *)(lVar11 + 200)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar11 + 200)" (( "(") (binary_expression "lVar11 + 200" (identifier "lVar11") (+ "+") (number_literal "200")) () ")")))) (= "=") (binary_expression "*(byte *)(lVar11 + 200) | 1" (pointer_expression "*(byte *)(lVar11 + 200)" (* "*") (cast_expression "(byte *)(lVar11 + 200)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar11 + 200)" (( "(") (binary_expression "lVar11 + 200" (identifier "lVar11") (+ "+") (number_literal "200")) () ")")))) (| "|") (number_literal "1"))) (; ";")) (} "}")))) (expression_statement "param_2 = (long *)local_39;" (assignment_expression "param_2 = (long *)local_39" (identifier "param_2") (= "=") (cast_expression "(long *)local_39" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_39"))) (; ";")) (expression_statement "param_1 = param_13;" (assignment_expression "param_1 = param_13" (identifier "param_1") (= "=") (identifier "param_13")) (; ";")) (expression_statement "local_39[0] = cVar7;" (assignment_expression "local_39[0] = cVar7" (subscript_expression "local_39[0]" (identifier "local_39") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "cVar7")) (; ";")) (expression_statement "FUN_001a5c60();" (call_expression "FUN_001a5c60()" (identifier "FUN_001a5c60") (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (cVar7 != '\b') goto LAB_0023bcd9;" (if "if") (parenthesized_expression "(cVar7 != '\b')" (( "(") (binary_expression "cVar7 != '\b'" (identifier "cVar7") (!= "!=") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))) () ")")) (goto_statement "goto LAB_0023bcd9;" (goto "goto") (statement_identifier "LAB_0023bcd9") (; ";"))) (} "}")) (else_clause "else {\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }" (else "else") (compound_statement "{\nLAB_0023bcc9:\n          local_39[0] = '\0';\n          param_2 = (long *)local_39;\n          param_1 = param_13;\n          FUN_001a5c60();\nLAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;\n        }" ({ "{") (labeled_statement "LAB_0023bcc9:\n          local_39[0] = '\0';" (statement_identifier "LAB_0023bcc9") (: ":") (expression_statement "local_39[0] = '\0';" (assignment_expression "local_39[0] = '\0'" (subscript_expression "local_39[0]" (identifier "local_39") ([ "[") (number_literal "0") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";"))) (expression_statement "param_2 = (long *)local_39;" (assignment_expression "param_2 = (long *)local_39" (identifier "param_2") (= "=") (cast_expression "(long *)local_39" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_39"))) (; ";")) (expression_statement "param_1 = param_13;" (assignment_expression "param_1 = param_13" (identifier "param_1") (= "=") (identifier "param_13")) (; ";")) (expression_statement "FUN_001a5c60();" (call_expression "FUN_001a5c60()" (identifier "FUN_001a5c60") (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_0023bcd9:\n          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;" (statement_identifier "LAB_0023bcd9") (: ":") (expression_statement "*(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;" (assignment_expression "*(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1" (pointer_expression "*(long *)(param_13 + 0x18)" (* "*") (cast_expression "(long *)(param_13 + 0x18)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_13 + 0x18)" (( "(") (binary_expression "param_13 + 0x18" (identifier "param_13") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (binary_expression "*(long *)(param_13 + 0x18) + 1" (pointer_expression "*(long *)(param_13 + 0x18)" (* "*") (cast_expression "(long *)(param_13 + 0x18)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_13 + 0x18)" (( "(") (binary_expression "param_13 + 0x18" (identifier "param_13") (+ "+") (number_literal "0x18")) () ")")))) (+ "+") (number_literal "1"))) (; ";"))) (} "}")))) (expression_statement "lVar14 = lVar14 + 1;" (assignment_expression "lVar14 = lVar14 + 1" (identifier "lVar14") (= "=") (binary_expression "lVar14 + 1" (identifier "lVar14") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (param_8 == lVar14) {\n          return;\n        }" (if "if") (parenthesized_expression "(param_8 == lVar14)" (( "(") (binary_expression "param_8 == lVar14" (identifier "param_8") (== "==") (identifier "lVar14")) () ")")) (compound_statement "{\n          return;\n        }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (} "}"))) (expression_statement "local_39[0] = '\b';" (assignment_expression "local_39[0] = '\b'" (subscript_expression "local_39[0]" (identifier "local_39") ([ "[") (number_literal "0") (] "]")) (= "=") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))) (; ";")) (expression_statement "lVar14 = lVar14 + 1;" (assignment_expression "lVar14 = lVar14 + 1" (identifier "lVar14") (= "=") (binary_expression "lVar14 + 1" (identifier "lVar14") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "param_2 = (long *)local_39;" (assignment_expression "param_2 = (long *)local_39" (identifier "param_2") (= "=") (cast_expression "(long *)local_39" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_39"))) (; ";")) (expression_statement "param_1 = param_13;" (assignment_expression "param_1 = param_13" (identifier "param_1") (= "=") (identifier "param_13")) (; ";")) (expression_statement "FUN_001a5c60();" (call_expression "FUN_001a5c60()" (identifier "FUN_001a5c60") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(param_8 != lVar14)" (( "(") (binary_expression "param_8 != lVar14" (identifier "param_8") (!= "!=") (identifier "lVar14")) () ")")) (; ";")) (} "}"))) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Struct "Arm_input_section<false>": ignoring overlapping field "original_addralign_" */
/* WARNING: Enum "<anon>": Some values do not have unique names */
/* WARNING: Enum "ELFOSABI": Some values do not have unique names */
/* WARNING: Struct "Arm_input_section<true>": ignoring overlapping field "original_addralign_" */
/* DWARF original prototype: void scan_relocatable_relocs(Target_arm<false> * this, Symbol_table *
   symtab, Layout * layout, Sized_relobj_file<32,_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_symbols,
   Relocatable_relocs * rr) */

void __thiscall
anon_unknown.dwarf_9b9b16::type_1<false>::function_1
          (type_1<false> *this,type_2 *symtab,type_3 *layout,
          type_4<32,type_5> *object,type_6 data_shndx,type_6 var_1,type_7 *var_5,
          size_t var_3,type_8 *output_section,bool needs_special_offset_handling,
          size_t var_9,type_7 *var_10,type_9 *rr)

{
  type_10 *puVar1;
  type_11 *pbVar2;
  type_11 var_20;
  type_12 var_12;
  type_6 var_7;
  type_13 var_21;
  type_14 *p_Var7;
  type_13 ppOVar8;
  type_15 *var_23;
  bool bVar10;
  type_6 var_13;
  int iVar12;
  type_16 extraout_var;
  type_17 *var_17;
  type_7 var_28;
  type_18 var_22;
  type_6 uVar15;
  type_6 var_11;
  size_t var_6;
  type_7 local_39 [9];
  type_16 extraout_var_00;
  type_19 var_8;
  
  if (var_1 != 9) {
                    /* WARNING: Subroutine does not return */
    gold::var_2("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");
  }
  if (var_3 != 0) {
    var_6 = 0;
    do {
      while ((!needs_special_offset_handling ||
             (bVar10 = var_14::type_8::var_4
                                 (output_section,(type_20 *)object,data_shndx,
                                  (type_19)*(type_6 *)(var_5 + var_6 * 8)), bVar10))) {
        var_7 = *(type_6 *)(var_5 + var_6 * 8 + 4);
        var_11 = var_7 >> 8;
        var_8 = (type_19)var_11;
        if (var_8 < var_9) {
          if (var_10 == (type_7 *)0x0) {
                    /* WARNING: Subroutine does not return */
            gold::var_2("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");
          }
          uVar15 = var_11 << 4;
          var_12 = *(type_12 *)(var_10 + (type_19)uVar15 + 0xe);
          var_13 = (type_6)var_12;
          if (var_12 < 0xff00) {
LAB_0023bd7e:
            if (var_13 == 0) goto LAB_0023bc63;
            ppOVar8 = (object->super_Sized_relobj<32,type_5>).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_19)((long)(object->super_Sized_relobj<32,type_5>).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)ppOVar8 >> 3) <= (type_19)var_13) {
                    /* WARNING: Subroutine does not return */
              gold::var_2("../../gold/object.h",0x50b,"is_section_included");
            }
            if (ppOVar8[var_13] == (type_8 *)0x0) break;
            var_20 = var_10[(type_19)uVar15 + 0xc];
          }
          else {
            if (var_12 == 0xffff) {
              var_17 = (object->super_Sized_relobj<32,type_5>).super_Relobj.super_Object.xindex_;
              if (var_17 == (type_17 *)0x0) {
                iVar12 = (*(object->super_Sized_relobj<32,type_5>).super_Relobj.super_Object.
                           _vptr_Object[0x1b])(object);
                var_17 = (type_17 *)var_18(extraout_var_00,iVar12);
                (object->super_Sized_relobj<32,type_5>).super_Relobj.super_Object.xindex_ = var_17;
              }
              var_13 = var_14::Xindex::var_19(var_17,(type_21 *)object,var_11);
              goto LAB_0023bd7e;
            }
LAB_0023bc63:
            var_20 = var_10[(type_19)uVar15 + 0xc];
          }
          if ((var_20 & 0xf) != 3) {
            if (var_11 == 0 && (var_7 & 0xff) == 0) break;
            var_21 = (object->local_values_).
                     super__Vector_base<var_14::Symbol_value<32>,var_15::allocator<var_14::Symbol_value<32>var_16>var_16>
                     ._M_impl._M_start;
            if ((type_19)(((long)(object->local_values_).
                               super__Vector_base<var_14::Symbol_value<32>,var_15::allocator<var_14::Symbol_value<32>var_16>var_16>
                               ._M_impl._M_finish - (long)var_21 >> 3) * -0x5555555555555555) <=
                var_8) {
                    /* WARNING: Subroutine does not return */
              gold::var_2
                        ("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");
            }
            var_21 = var_21 + var_8;
            var_7 = var_21->output_symtab_index_;
            if ((var_7 != 0) && (var_7 != 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;
            goto LAB_0023bcc9;
          }
          var_22 = var_7 & 0xff;
          if ((var_22 == 0x26) || (var_22 == 0x29)) {
            var_23 = var_14::parameters->target_;
            if (var_23 == (type_15 *)0x0) {
                    /* WARNING: Subroutine does not return */
              type_1<true>::var_24();
            }
            if ((var_23->pti_->machine_code != var_25) || (var_23->pti_->is_big_endian != false)) {
                    /* WARNING: Subroutine does not return */
              gold::var_2("../../gold/arm.cc",0x988,"default_target");
            }
            if (var_22 == 0x26) {
              var_22 = var_23[9].processor_specific_flags_;
            }
            else if (var_22 == 0x29) {
              var_22 = *(type_18 *)&var_23[9].are_processor_specific_flags_set_;
            }
          }
          switch(var_22) {
          case 0:
          case 0x28:
          case 0x5a:
          case 0x5b:
          case 0x5c:
          case 0x5d:
          case 99:
          case 100:
          case 0x65:
          case 0x81:
          case 0x82:
            var_28 = '\x02';
            break;
          default:
            var_28 = '\t';
            break;
          case 2:
          case 3:
          case 9:
          case 0x18:
          case 0x19:
          case 0x1a:
          case 0x1f:
          case 0x37:
          case 0x38:
          case 0x5e:
          case 0x5f:
          case 0x60:
          case 0x68:
          case 0x69:
          case 0x6a:
          case 0x6b:
          case 0x6c:
            var_28 = '\a';
            break;
          case 0x26:
          case 0x29:
                    /* WARNING: Subroutine does not return */
            gold::var_2("../../gold/arm.cc",0x824,"local_section_strategy");
          }
          p_Var7 = (object->super_Sized_relobj<32,type_5>).super_Relobj.super_Object._vptr_Object
                   [0x18];
          if (p_Var7 == var_14::type_20::do_output_section) {
            ppOVar8 = (object->super_Sized_relobj<32,type_5>).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_19)((long)(object->super_Sized_relobj<32,type_5>).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)ppOVar8 >> 3) <= (type_19)var_13) {
                    /* WARNING: Subroutine does not return */
              gold::var_2("../../gold/object.h",0x5c8,"do_output_section");
            }
            puVar1 = &ppOVar8[var_13]->field_0xc8;
            *puVar1 = *puVar1 | 1;
          }
          else {
            iVar12 = (*p_Var7)(object,(type_19)var_13);
            pbVar2 = (type_11 *)(var_18(extraout_var,iVar12) + 200);
            *pbVar2 = *pbVar2 | 1;
          }
          local_39[0] = var_28;
          std::vector<var_27,var_15::allocator<var_27>var_16>::var_26<var_27>
                    (&rr->reloc_strategies_,local_39);
          if (var_28 != '\b') goto LAB_0023bcd9;
        }
        else {
LAB_0023bcc9:
          local_39[0] = '\0';
          std::vector<var_27,var_15::allocator<var_27>var_16>::var_26<var_27>
                    (&rr->reloc_strategies_,local_39);
LAB_0023bcd9:
          rr->output_reloc_count_ = rr->output_reloc_count_ + 1;
        }
        var_6 = var_6 + 1;
        if (var_3 == var_6) {
          return;
        }
      }
      local_39[0] = '\b';
      var_6 = var_6 + 1;
      std::vector<var_27,var_15::allocator<var_27>var_16>::var_26<var_27>
                (&rr->reloc_strategies_,local_39);
    } while (var_3 != var_6);
  }
  return;
}


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

void MASKED(ulong param_1,long *param_2,undefined8 param_3,long *param_4,undefined4 param_5,
                 int param_6,long param_7,long param_8,ulong param_9,char param_10,ulong param_11,
                 long param_12,ulong param_13)

{
  byte *pbVar1;
  int *piVar2;
  byte bVar3;
  ushort uVar4;
  int iVar5;
  long *plVar6;
  char cVar7;
  uint uVar8;
  long *plVar9;
  uint uVar10;
  long lVar11;
  uint uVar12;
  long lVar14;
  char local_39 [9];
  ulong uVar13;
  
  if (param_6 != 9) {
                    /* WARNING: Subroutine does not return */
    FUN_00352af0("../../gold/arm.cc",0x2873,"scan_relocatable_relocs");
  }
  if (param_8 != 0) {
    lVar14 = 0;
    do {
      while ((param_10 == '\0' ||
             (param_2 = param_4, param_1 = param_9,
             cVar7 = FUN_003cfe70(param_9,param_4,param_5,*(undefined4 *)(param_7 + lVar14 * 8)),
             cVar7 != '\0'))) {
        uVar10 = *(uint *)(param_7 + 4 + lVar14 * 8);
        uVar12 = uVar10 >> 8;
        uVar13 = (ulong)uVar12;
        if (uVar13 < param_11) {
          if (param_12 == 0) {
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/target-reloc.h",0x2e4,"scan_relocatable_relocs");
          }
          lVar11 = (ulong)(uVar12 << 4) + param_12;
          uVar4 = *(ushort *)(lVar11 + 0xe);
          uVar8 = (uint)uVar4;
          if (uVar4 < 0xff00) {
LAB_0023bd7e:
            if (uVar8 == 0) goto LAB_0023bc63;
            param_2 = (long *)param_4[10];
            param_1 = (ulong)uVar8;
            if ((ulong)(param_4[0xb] - (long)param_2 >> 3) <= param_1) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x50b,"is_section_included");
            }
            if (param_2[param_1] == 0) break;
            bVar3 = *(byte *)(lVar11 + 0xc);
          }
          else {
            if (uVar4 == 0xffff) {
              param_1 = param_4[8];
              if (param_1 == 0) {
                param_1 = (**(code **)(*param_4 + 0xd8))(param_4);
                param_4[8] = param_1;
              }
              param_2 = param_4;
              uVar8 = FUN_00392c60(param_1,param_4,uVar12);
              goto LAB_0023bd7e;
            }
LAB_0023bc63:
            bVar3 = *(byte *)(lVar11 + 0xc);
          }
          if ((bVar3 & 0xf) != 3) {
            if (uVar12 == 0 && (uVar10 & 0xff) == 0) break;
            if ((ulong)((param_4[0x2d] - param_4[0x2c] >> 3) * -0x5555555555555555) <= uVar13) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x8e3,"set_must_have_output_symtab_entry");
            }
            piVar2 = (int *)(param_4[0x2c] + uVar13 * 0x18);
            iVar5 = *piVar2;
            if ((iVar5 != 0) && (iVar5 != -2)) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x71f,"set_must_have_output_symtab_entry");
            }
            *piVar2 = -2;
            goto LAB_0023bcc9;
          }
          uVar10 = uVar10 & 0xff;
          if ((uVar10 == 0x26) || (uVar10 == 0x29)) {
            lVar11 = *(long *)(PTR_DAT_0067cb08 + 0x18);
            if (lVar11 == 0) {
              FUN_00232220();
              if (*(long *)(param_1 + 0x88) == 0) {
                    /* WARNING: Subroutine does not return */
                FUN_00352af0("../../gold/nacl.h",0x90,"do_supported_emulations");
              }
              if (*(long *)(param_1 + 0x20) == 0) {
                    /* WARNING: Subroutine does not return */
                FUN_00352af0("../../gold/target-select.h",200,"do_supported_emulations");
              }
              plVar9 = (long *)param_2[1];
              plVar6 = (long *)param_2[2];
              if (plVar9 == plVar6) {
                FUN_001a5e80(param_2,plVar6,param_1 + 0x20);
                plVar9 = (long *)param_2[1];
                if (plVar9 == (long *)param_2[2]) goto LAB_0023c049;
              }
              else {
                *plVar9 = *(long *)(param_1 + 0x20);
                plVar9 = plVar9 + 1;
                param_2[1] = (long)plVar9;
                if (plVar9 == plVar6) {
LAB_0023c049:
                  FUN_001a5e80(param_2,plVar9,param_1 + 0x88);
                  return;
                }
              }
              *plVar9 = *(long *)(param_1 + 0x88);
              param_2[1] = (long)(plVar9 + 1);
              return;
            }
            if ((*(int *)(*(long *)(lVar11 + 8) + 8) != 0x28) ||
               (*(char *)(*(long *)(lVar11 + 8) + 4) != '\0')) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/arm.cc",0x988,"default_target");
            }
            if (uVar10 == 0x26) {
              uVar10 = *(uint *)(lVar11 + 0x130);
            }
            else if (uVar10 == 0x29) {
              uVar10 = *(uint *)(lVar11 + 0x134);
            }
          }
          switch(uVar10) {
          case 0:
          case 0x28:
          case 0x5a:
          case 0x5b:
          case 0x5c:
          case 0x5d:
          case 99:
          case 100:
          case 0x65:
          case 0x81:
          case 0x82:
            cVar7 = '\x02';
            break;
          default:
            cVar7 = '\t';
            break;
          case 2:
          case 3:
          case 9:
          case 0x18:
          case 0x19:
          case 0x1a:
          case 0x1f:
          case 0x37:
          case 0x38:
          case 0x5e:
          case 0x5f:
          case 0x60:
          case 0x68:
          case 0x69:
          case 0x6a:
          case 0x6b:
          case 0x6c:
            cVar7 = '\a';
            break;
          case 0x26:
          case 0x29:
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/arm.cc",0x824,"local_section_strategy");
          }
          if (*(code **)(*param_4 + 0xc0) == FUN_001a5070) {
            if ((ulong)(param_4[0xb] - param_4[10] >> 3) <= (ulong)uVar8) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/object.h",0x5c8,"do_output_section");
            }
            pbVar1 = (byte *)(*(long *)(param_4[10] + (ulong)uVar8 * 8) + 200);
            *pbVar1 = *pbVar1 | 1;
          }
          else {
            lVar11 = (**(code **)(*param_4 + 0xc0))(param_4,uVar8);
            *(byte *)(lVar11 + 200) = *(byte *)(lVar11 + 200) | 1;
          }
          param_2 = (long *)local_39;
          param_1 = param_13;
          local_39[0] = cVar7;
          FUN_001a5c60();
          if (cVar7 != '\b') goto LAB_0023bcd9;
        }
        else {
LAB_0023bcc9:
          local_39[0] = '\0';
          param_2 = (long *)local_39;
          param_1 = param_13;
          FUN_001a5c60();
LAB_0023bcd9:
          *(long *)(param_13 + 0x18) = *(long *)(param_13 + 0x18) + 1;
        }
        lVar14 = lVar14 + 1;
        if (param_8 == lVar14) {
          return;
        }
      }
      local_39[0] = '\b';
      lVar14 = lVar14 + 1;
      param_2 = (long *)local_39;
      param_1 = param_13;
      FUN_001a5c60();
    } while (param_8 != lVar14);
  }
  return;
}

