
/* WARNING: Type propagation algorithm not settling */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Enum "ELFOSABI": Some values do not have unique names */
/* DWARF original prototype: Object * do_make_elf_object(Target_mips<32,_true> * this, string *
   name, Input_file * input_file, off_t offset, Ehdr<32,_true> * ehdr) */

Object * __thiscall
anon_unknown.dwarf_d7d43e::Target_mips<32,_true>::do_make_elf_object
          (Target_mips<32,_true> *this,string *name,Input_file *input_file,off_t offset,
          Ehdr<32,_true> *ehdr)

{
  Xindex **ppXVar1;
  Object_merge_map **ppOVar2;
  uint *puVar3;
  _Prime_rehash_policy *p_Var4;
  byte bVar5;
  ushort uVar6;
  pointer pcVar7;
  Ehdr_data<32> *pEVar8;
  byte bVar9;
  bool bVar10;
  Object *pOVar11;
  char *format;
  Sized_relobj_file<32,_true> *this_00;
  uint uVar12;
  int unaff_EDI;
  
  __x86_get_pc_thunk_di();
  uVar6 = ehdr->p_->e_type;
  uVar12 = (uint)(ushort)(uVar6 << 8 | uVar6 >> 8);
  if (uVar12 != 1) {
    if (uVar12 == 2) {
      bVar10 = gold::Input_file::just_symbols(input_file);
      if (bVar10) goto LAB_00174680;
    }
    else if (uVar12 == 3) {
      pOVar11 = gold::Target::do_make_elf_object((Target *)this,name,input_file,offset,ehdr);
      return pOVar11;
    }
    pcVar7 = (name->_M_dataplus)._M_p;
    format = (char *)gettext(&UNK_002f2517 + unaff_EDI);
    gold::gold_error(format,pcVar7,uVar12);
    return (Object *)0x0;
  }
LAB_00174680:
  this_00 = (Sized_relobj_file<32,_true> *)operator_new(0x248);
                    /* try { // try from 001746ab to 001746af has its CatchHandler @ 00174971 */
  gold::Sized_relobj_file<32,_true>::Sized_relobj_file(this_00,name,input_file,offset,ehdr);
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object._vptr_Object =
       (_func_int_varargs **)0x0;
  (this_00->super_Sized_relobj<32,_true>).super_Relobj.super_Object._vptr_Object =
       (_func_int_varargs **)("R_ARM_GOTRELAX" + unaff_EDI + 5);
  ppXVar1 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.xindex_;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.
  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl._M_start
       = (pointer)ppXVar1;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.
  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.
  _M_finish = (pointer)ppXVar1;
  ppOVar2 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.object_merge_map_;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.rd_ = (Read_relocs_data *)ppOVar2;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.sd_ = (Symbols_data *)ppOVar2;
  puVar3 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.first_dyn_reloc_;
  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_buckets =
       (__bucket_type *)puVar3;
  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_bucket_count =
       (size_type)puVar3;
  p_Var4 = &this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy;
  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_single_bucket =
       (__bucket_type)p_Var4;
  this_00[1].super_Sized_relobj<32,_true>.section_offsets_.
  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start = (pointer)p_Var4
  ;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_._M_dataplus._M_p =
       (pointer)0x0;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_._M_string_length = 0;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2.
  _M_allocated_capacity = 0;
  *(undefined4 *)
   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 4) = 0;
  *(undefined4 *)
   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 8) = 0;
  *(undefined4 *)
   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 0xc) = 0
  ;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.input_file_ = (Input_file *)0x0;
  *(undefined4 *)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ = 0;
  *(undefined4 *)
   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ + 4) = 0;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.shnum_ = 0;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.xindex_ = (Xindex *)0x0;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.compressed_sections_ =
       (Compressed_section_map *)0x0;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.
  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.
  _M_end_of_storage = (pointer)0x0;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.object_merge_map_ = (Object_merge_map *)0x0;
  *(undefined4 *)
   &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.relocs_must_follow_section_writes_ = 0;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.reloc_counts_ = (uint *)0x0;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.first_dyn_reloc_ = 0;
  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.dyn_reloc_count_ = 0;
  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_before_begin._M_nxt =
       (_Hash_node_base *)0x0;
  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy.
  _M_max_load_factor = 0.0;
  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy._M_next_resize =
       0;
  this_00[1].super_Sized_relobj<32,_true>.section_offsets_.
  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish = (pointer)0x0;
  this_00[1].elf_file_.file_ = (Object *)0x0;
  bVar5 = (byte)this_00[1].e_type_;
  *(Elf_file<32,_true,_gold::Object> **)((int)&this_00[1].elf_file_.shoff_ + 4) =
       &this_00[1].elf_file_;
  this_00[1].elf_file_.shnum_ = (uint)&this_00[1].elf_file_;
  *(undefined4 *)&this_00[1].elf_file_.shoff_ = 0;
  *(byte *)&this_00[1].e_type_ = bVar5 & 0xf3 | 8;
  this_00[1].elf_file_.shstrndx_ = 0;
  this_00[1].elf_file_.large_shndx_offset_ = 0;
  this_00[1].symtab_shndx_ = 0;
  this_00[1].local_symbol_count_ = 0;
  this_00[1].output_local_symbol_count_ = 0;
  this_00[1].output_local_dynsym_count_ = 0;
  this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.
  _M_start = (pointer)0x0;
  this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.
  _M_finish = (pointer)0x0;
  this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.
  _M_end_of_storage = (pointer)0x0;
  this_00[1].defined_count_ = 0;
  *(undefined4 *)&this_00[1].local_symbol_offset_ = 0;
  *(undefined4 *)((int)&this_00[1].local_symbol_offset_ + 4) = 0;
  *(undefined4 *)&this_00[1].local_dynsym_offset_ = 0;
  *(undefined4 *)((int)&this_00[1].local_dynsym_offset_ + 4) = 0;
  this_00[1].local_values_.
  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.
  _M_start = (pointer)0x0;
  this_00[1].local_values_.
  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.
  _M_finish = (pointer)0x0;
  this_00[1].local_values_.
  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.
  _M_end_of_storage = (pointer)0x0;
  this_00[1].local_plt_offsets_._M_h._M_buckets = (__bucket_type *)0x0;
  this_00[1].local_plt_offsets_._M_h._M_bucket_count = 0xffffffff;
  this_00[1].local_plt_offsets_._M_h._M_before_begin._M_nxt = (_Hash_node_base *)0x0;
  this_00[1].local_plt_offsets_._M_h._M_element_count = 0;
  this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_max_load_factor = 0.0;
  this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_next_resize = 0;
  this_00[1].local_plt_offsets_._M_h._M_single_bucket = (__bucket_type)0x0;
  *(undefined4 *)&this_00[1].kept_comdat_sections_._M_t._M_impl = 0;
  this_00[1].kept_comdat_sections_._M_t._M_impl.super__Rb_tree_header._M_header._M_color = _S_red;
  pEVar8 = ehdr->p_;
  bVar9 = (byte)(pEVar8->e_flags >> 0x19) & 1;
  *(byte *)&this_00[1].e_type_ = bVar5 & 0xf2 | 8 | bVar9;
  *(byte *)&this_00[1].e_type_ =
       (char)((pEVar8->e_flags >> 0x18 & 0x20) >> 5) * '\x02' | bVar5 & 0xf0 | 8 | bVar9;
  gold::Sized_relobj_file<32,_true>::do_setup(this_00);
  return (Object *)this_00;
}



int * FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,
                  undefined4 param_5,int *param_6)

{
  byte bVar1;
  undefined4 uVar2;
  int iVar3;
  byte bVar4;
  char cVar5;
  int *piVar6;
  undefined4 uVar7;
  ushort uVar8;
  int unaff_EDI;
  
  FUN_00074f0a();
  uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;
  if (uVar8 != 1) {
    if (uVar8 == 2) {
      cVar5 = FUN_0023df40(param_3);
      if (cVar5 != '\0') goto LAB_00174680;
    }
    else if (uVar8 == 3) {
      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);
      return piVar6;
    }
    uVar2 = *param_2;
    uVar7 = gettext(unaff_EDI + 0x2f2517);
    FUN_0023b810(uVar7,uVar2,uVar8);
    return (int *)0x0;
  }
LAB_00174680:
  piVar6 = (int *)FUN_003ac4d0(0x248);
                    /* try { // try from 001746ab to 001746af has its CatchHandler @ 00174971 */
  FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);
  piVar6[0x4f] = 0;
  *piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);
  piVar6[0x5d] = (int)(piVar6 + 0x5b);
  piVar6[0x5e] = (int)(piVar6 + 0x5b);
  piVar6[99] = (int)(piVar6 + 0x61);
  piVar6[100] = (int)(piVar6 + 0x61);
  piVar6[0x69] = (int)(piVar6 + 0x67);
  piVar6[0x6a] = (int)(piVar6 + 0x67);
  piVar6[0x6f] = (int)(piVar6 + 0x6d);
  piVar6[0x70] = (int)(piVar6 + 0x6d);
  piVar6[0x50] = 0;
  piVar6[0x51] = 0;
  piVar6[0x52] = 0;
  piVar6[0x53] = 0;
  piVar6[0x54] = 0;
  piVar6[0x55] = 0;
  piVar6[0x56] = 0;
  piVar6[0x57] = 0;
  piVar6[0x58] = 0;
  piVar6[0x59] = 0;
  piVar6[0x5b] = 0;
  piVar6[0x5c] = 0;
  piVar6[0x5f] = 0;
  piVar6[0x61] = 0;
  piVar6[0x62] = 0;
  piVar6[0x65] = 0;
  piVar6[0x67] = 0;
  piVar6[0x68] = 0;
  piVar6[0x6b] = 0;
  piVar6[0x6d] = 0;
  piVar6[0x6e] = 0;
  piVar6[0x71] = 0;
  piVar6[0x73] = 0;
  bVar1 = *(byte *)(piVar6 + 0x79);
  piVar6[0x75] = (int)(piVar6 + 0x73);
  piVar6[0x76] = (int)(piVar6 + 0x73);
  piVar6[0x74] = 0;
  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;
  piVar6[0x77] = 0;
  piVar6[0x78] = 0;
  piVar6[0x7a] = 0;
  piVar6[0x7b] = 0;
  piVar6[0x7c] = 0;
  piVar6[0x7d] = 0;
  piVar6[0x7e] = 0;
  piVar6[0x7f] = 0;
  piVar6[0x80] = 0;
  piVar6[0x81] = 0;
  piVar6[0x82] = 0;
  piVar6[0x83] = 0;
  piVar6[0x84] = 0;
  piVar6[0x85] = 0;
  piVar6[0x86] = 0;
  piVar6[0x87] = 0;
  piVar6[0x88] = 0;
  piVar6[0x89] = 0;
  piVar6[0x8a] = -1;
  piVar6[0x8b] = 0;
  piVar6[0x8c] = 0;
  piVar6[0x8d] = 0;
  piVar6[0x8e] = 0;
  piVar6[0x8f] = 0;
  piVar6[0x90] = 0;
  piVar6[0x91] = 0;
  iVar3 = *param_6;
  bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;
  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;
  *(byte *)(piVar6 + 0x79) =
       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;
  FUN_00294830(piVar6);
  return piVar6;
}


PUSH EBP
MOV EBP,ESP
PUSH EDI
CALL 0x00074f0a
ADD EDI,0x475a37
PUSH ESI
PUSH EBX
SUB ESP,0x1c
MOV EAX,dword ptr [EBP + 0x1c]
MOV EDX,dword ptr [EBP + 0x14]
MOV ECX,dword ptr [EBP + 0x18]
MOV EAX,dword ptr [EAX]
MOVZX ESI,word ptr [EAX + 0x10]
ROL SI,0x8
MOVZX ESI,SI
CMP ESI,0x1
JZ 0x00174680
CMP ESI,0x2
JZ 0x00174660
CMP ESI,0x3
JNZ 0x00174628
SUB ESP,0x8
PUSH dword ptr [EBP + 0x1c]
MOV EBX,EDI
PUSH ECX
PUSH EDX
PUSH dword ptr [EBP + 0x10]
PUSH dword ptr [EBP + 0xc]
PUSH dword ptr [EBP + 0x8]
CALL 0x00364830
ADD ESP,0x20
LEA ESP,[EBP + -0xc]
MOV ESI,EAX
POP EBX
MOV EAX,ESI
POP ESI
POP EDI
POP EBP
RET
MOV EAX,dword ptr [EBP + 0xc]
SUB ESP,0xc
MOV EBX,EDI
MOV EAX,dword ptr [EAX]
MOV dword ptr [EBP + -0x20],EAX
LEA EAX,[EDI + 0xffe7cae0]
PUSH EAX
CALL 0x00039440
ADD ESP,0xc
PUSH ESI
XOR ESI,ESI
PUSH dword ptr [EBP + -0x20]
PUSH EAX
CALL 0x0023b810
ADD ESP,0x10
LEA ESP,[EBP + -0xc]
MOV EAX,ESI
POP EBX
POP ESI
POP EDI
POP EBP
RET
SUB ESP,0xc
PUSH dword ptr [EBP + 0x10]
MOV EBX,EDI
MOV dword ptr [EBP + -0x20],EDX
MOV dword ptr [EBP + -0x1c],ECX
CALL 0x0023df40
ADD ESP,0x10
MOV EDX,dword ptr [EBP + -0x20]
MOV ECX,dword ptr [EBP + -0x1c]
TEST AL,AL
JZ 0x00174628
SUB ESP,0xc
MOV EBX,EDI
MOV dword ptr [EBP + -0x20],EDX
PUSH 0x248
MOV dword ptr [EBP + -0x1c],ECX
CALL 0x003ac4d0
POP ECX
MOV EDX,dword ptr [EBP + -0x20]
MOV ECX,dword ptr [EBP + -0x1c]
MOV ESI,EAX
POP EAX
PUSH dword ptr [EBP + 0x1c]
PUSH ECX
PUSH EDX
PUSH dword ptr [EBP + 0x10]
PUSH dword ptr [EBP + 0xc]
PUSH ESI
CALL 0x0029f2f0
LEA EAX,[EDI + 0xffff6d48]
ADD ESP,0x14
MOV dword ptr [ESI + 0x13c],0x0
MOV dword ptr [ESI],EAX
LEA EAX,[ESI + 0x16c]
MOV dword ptr [ESI + 0x174],EAX
MOV dword ptr [ESI + 0x178],EAX
LEA EAX,[ESI + 0x184]
MOV dword ptr [ESI + 0x18c],EAX
MOV dword ptr [ESI + 0x190],EAX
LEA EAX,[ESI + 0x19c]
MOV dword ptr [ESI + 0x1a4],EAX
MOV dword ptr [ESI + 0x1a8],EAX
LEA EAX,[ESI + 0x1b4]
MOV dword ptr [ESI + 0x1bc],EAX
MOV dword ptr [ESI + 0x1c0],EAX
LEA EAX,[ESI + 0x1cc]
MOV dword ptr [ESI + 0x140],0x0
MOV dword ptr [ESI + 0x144],0x0
MOV dword ptr [ESI + 0x148],0x0
MOV dword ptr [ESI + 0x14c],0x0
MOV dword ptr [ESI + 0x150],0x0
MOV dword ptr [ESI + 0x154],0x0
MOV dword ptr [ESI + 0x158],0x0
MOV dword ptr [ESI + 0x15c],0x0
MOV dword ptr [ESI + 0x160],0x0
MOV dword ptr [ESI + 0x164],0x0
MOV dword ptr [ESI + 0x16c],0x0
MOV dword ptr [ESI + 0x170],0x0
MOV dword ptr [ESI + 0x17c],0x0
MOV dword ptr [ESI + 0x184],0x0
MOV dword ptr [ESI + 0x188],0x0
MOV dword ptr [ESI + 0x194],0x0
MOV dword ptr [ESI + 0x19c],0x0
MOV dword ptr [ESI + 0x1a0],0x0
MOV dword ptr [ESI + 0x1ac],0x0
MOV dword ptr [ESI + 0x1b4],0x0
MOV dword ptr [ESI + 0x1b8],0x0
MOV dword ptr [ESI + 0x1c4],0x0
MOV dword ptr [ESI + 0x1cc],0x0
MOVZX EDX,byte ptr [ESI + 0x1e4]
MOV dword ptr [ESI + 0x1d4],EAX
MOV dword ptr [ESI + 0x1d8],EAX
AND EDX,0xfffffff3
MOV EAX,dword ptr [EBP + 0x1c]
MOV dword ptr [ESI + 0x1d0],0x0
OR EDX,0x8
MOV byte ptr [ESI + 0x1e4],DL
MOV dword ptr [ESI + 0x1dc],0x0
MOV dword ptr [ESI + 0x1e0],0x0
MOV dword ptr [ESI + 0x1e8],0x0
MOV dword ptr [ESI + 0x1ec],0x0
MOV dword ptr [ESI + 0x1f0],0x0
MOV dword ptr [ESI + 0x1f4],0x0
MOV dword ptr [ESI + 0x1f8],0x0
MOV dword ptr [ESI + 0x1fc],0x0
MOV dword ptr [ESI + 0x200],0x0
MOV dword ptr [ESI + 0x204],0x0
MOV dword ptr [ESI + 0x208],0x0
MOV dword ptr [ESI + 0x20c],0x0
MOV dword ptr [ESI + 0x210],0x0
MOV dword ptr [ESI + 0x214],0x0
MOV dword ptr [ESI + 0x218],0x0
MOV dword ptr [ESI + 0x21c],0x0
MOV dword ptr [ESI + 0x220],0x0
MOV dword ptr [ESI + 0x224],0x0
MOV dword ptr [ESI + 0x228],0xffffffff
MOV dword ptr [ESI + 0x22c],0x0
MOV dword ptr [ESI + 0x230],0x0
MOV dword ptr [ESI + 0x234],0x0
MOV dword ptr [ESI + 0x238],0x0
MOV dword ptr [ESI + 0x23c],0x0
MOV dword ptr [ESI + 0x240],0x0
MOV dword ptr [ESI + 0x244],0x0
MOV EBX,dword ptr [EAX]
MOV EAX,dword ptr [EBX + 0x24]
BSWAP EAX
SHR EAX,0x1
MOV ECX,EAX
MOV EAX,EDX
AND ECX,0x1
AND EAX,0xfffffffe
OR EAX,ECX
MOV byte ptr [ESI + 0x1e4],AL
MOV EDX,dword ptr [EBX + 0x24]
AND EAX,0xfffffffd
MOV EBX,EDI
BSWAP EDX
SHR EDX,0x5
AND EDX,0x1
ADD EDX,EDX
OR EDX,EAX
MOV byte ptr [ESI + 0x1e4],DL
PUSH ESI
CALL 0x00294830
ADD ESP,0x10
LEA ESP,[EBP + -0xc]
MOV EAX,ESI
POP EBX
POP ESI
POP EDI
POP EBP
RET
(translation_unit "int * FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)\n\n{\n  byte bVar1;\n  undefined4 uVar2;\n  int iVar3;\n  byte bVar4;\n  char cVar5;\n  int *piVar6;\n  undefined4 uVar7;\n  ushort uVar8;\n  int unaff_EDI;\n  \n  FUN_00074f0a();\n  uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;\n  if (uVar8 != 1) {\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }\nLAB_00174680:\n  piVar6 = (int *)FUN_003ac4d0(0x248);\n                    /* try { // try from 001746ab to 001746af has its CatchHandler @ 00174971 */\n  FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);\n  piVar6[0x4f] = 0;\n  *piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);\n  piVar6[0x5d] = (int)(piVar6 + 0x5b);\n  piVar6[0x5e] = (int)(piVar6 + 0x5b);\n  piVar6[99] = (int)(piVar6 + 0x61);\n  piVar6[100] = (int)(piVar6 + 0x61);\n  piVar6[0x69] = (int)(piVar6 + 0x67);\n  piVar6[0x6a] = (int)(piVar6 + 0x67);\n  piVar6[0x6f] = (int)(piVar6 + 0x6d);\n  piVar6[0x70] = (int)(piVar6 + 0x6d);\n  piVar6[0x50] = 0;\n  piVar6[0x51] = 0;\n  piVar6[0x52] = 0;\n  piVar6[0x53] = 0;\n  piVar6[0x54] = 0;\n  piVar6[0x55] = 0;\n  piVar6[0x56] = 0;\n  piVar6[0x57] = 0;\n  piVar6[0x58] = 0;\n  piVar6[0x59] = 0;\n  piVar6[0x5b] = 0;\n  piVar6[0x5c] = 0;\n  piVar6[0x5f] = 0;\n  piVar6[0x61] = 0;\n  piVar6[0x62] = 0;\n  piVar6[0x65] = 0;\n  piVar6[0x67] = 0;\n  piVar6[0x68] = 0;\n  piVar6[0x6b] = 0;\n  piVar6[0x6d] = 0;\n  piVar6[0x6e] = 0;\n  piVar6[0x71] = 0;\n  piVar6[0x73] = 0;\n  bVar1 = *(byte *)(piVar6 + 0x79);\n  piVar6[0x75] = (int)(piVar6 + 0x73);\n  piVar6[0x76] = (int)(piVar6 + 0x73);\n  piVar6[0x74] = 0;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;\n  piVar6[0x77] = 0;\n  piVar6[0x78] = 0;\n  piVar6[0x7a] = 0;\n  piVar6[0x7b] = 0;\n  piVar6[0x7c] = 0;\n  piVar6[0x7d] = 0;\n  piVar6[0x7e] = 0;\n  piVar6[0x7f] = 0;\n  piVar6[0x80] = 0;\n  piVar6[0x81] = 0;\n  piVar6[0x82] = 0;\n  piVar6[0x83] = 0;\n  piVar6[0x84] = 0;\n  piVar6[0x85] = 0;\n  piVar6[0x86] = 0;\n  piVar6[0x87] = 0;\n  piVar6[0x88] = 0;\n  piVar6[0x89] = 0;\n  piVar6[0x8a] = -1;\n  piVar6[0x8b] = 0;\n  piVar6[0x8c] = 0;\n  piVar6[0x8d] = 0;\n  piVar6[0x8e] = 0;\n  piVar6[0x8f] = 0;\n  piVar6[0x90] = 0;\n  piVar6[0x91] = 0;\n  iVar3 = *param_6;\n  bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;\n  *(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;\n  FUN_00294830(piVar6);\n  return piVar6;\n}\n\n" (function_definition "int * FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)\n\n{\n  byte bVar1;\n  undefined4 uVar2;\n  int iVar3;\n  byte bVar4;\n  char cVar5;\n  int *piVar6;\n  undefined4 uVar7;\n  ushort uVar8;\n  int unaff_EDI;\n  \n  FUN_00074f0a();\n  uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;\n  if (uVar8 != 1) {\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }\nLAB_00174680:\n  piVar6 = (int *)FUN_003ac4d0(0x248);\n                    /* try { // try from 001746ab to 001746af has its CatchHandler @ 00174971 */\n  FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);\n  piVar6[0x4f] = 0;\n  *piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);\n  piVar6[0x5d] = (int)(piVar6 + 0x5b);\n  piVar6[0x5e] = (int)(piVar6 + 0x5b);\n  piVar6[99] = (int)(piVar6 + 0x61);\n  piVar6[100] = (int)(piVar6 + 0x61);\n  piVar6[0x69] = (int)(piVar6 + 0x67);\n  piVar6[0x6a] = (int)(piVar6 + 0x67);\n  piVar6[0x6f] = (int)(piVar6 + 0x6d);\n  piVar6[0x70] = (int)(piVar6 + 0x6d);\n  piVar6[0x50] = 0;\n  piVar6[0x51] = 0;\n  piVar6[0x52] = 0;\n  piVar6[0x53] = 0;\n  piVar6[0x54] = 0;\n  piVar6[0x55] = 0;\n  piVar6[0x56] = 0;\n  piVar6[0x57] = 0;\n  piVar6[0x58] = 0;\n  piVar6[0x59] = 0;\n  piVar6[0x5b] = 0;\n  piVar6[0x5c] = 0;\n  piVar6[0x5f] = 0;\n  piVar6[0x61] = 0;\n  piVar6[0x62] = 0;\n  piVar6[0x65] = 0;\n  piVar6[0x67] = 0;\n  piVar6[0x68] = 0;\n  piVar6[0x6b] = 0;\n  piVar6[0x6d] = 0;\n  piVar6[0x6e] = 0;\n  piVar6[0x71] = 0;\n  piVar6[0x73] = 0;\n  bVar1 = *(byte *)(piVar6 + 0x79);\n  piVar6[0x75] = (int)(piVar6 + 0x73);\n  piVar6[0x76] = (int)(piVar6 + 0x73);\n  piVar6[0x74] = 0;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;\n  piVar6[0x77] = 0;\n  piVar6[0x78] = 0;\n  piVar6[0x7a] = 0;\n  piVar6[0x7b] = 0;\n  piVar6[0x7c] = 0;\n  piVar6[0x7d] = 0;\n  piVar6[0x7e] = 0;\n  piVar6[0x7f] = 0;\n  piVar6[0x80] = 0;\n  piVar6[0x81] = 0;\n  piVar6[0x82] = 0;\n  piVar6[0x83] = 0;\n  piVar6[0x84] = 0;\n  piVar6[0x85] = 0;\n  piVar6[0x86] = 0;\n  piVar6[0x87] = 0;\n  piVar6[0x88] = 0;\n  piVar6[0x89] = 0;\n  piVar6[0x8a] = -1;\n  piVar6[0x8b] = 0;\n  piVar6[0x8c] = 0;\n  piVar6[0x8d] = 0;\n  piVar6[0x8e] = 0;\n  piVar6[0x8f] = 0;\n  piVar6[0x90] = 0;\n  piVar6[0x91] = 0;\n  iVar3 = *param_6;\n  bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;\n  *(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;\n  FUN_00294830(piVar6);\n  return piVar6;\n}" primitive_type (pointer_declarator "* FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)" * (function_declarator "FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)" identifier (parameter_list "(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "undefined4 param_4" type_identifier identifier) , (parameter_declaration "undefined4 param_5" type_identifier identifier) , (parameter_declaration "int *param_6" primitive_type (pointer_declarator "*param_6" * identifier)) )))) (compound_statement "{\n  byte bVar1;\n  undefined4 uVar2;\n  int iVar3;\n  byte bVar4;\n  char cVar5;\n  int *piVar6;\n  undefined4 uVar7;\n  ushort uVar8;\n  int unaff_EDI;\n  \n  FUN_00074f0a();\n  uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;\n  if (uVar8 != 1) {\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }\nLAB_00174680:\n  piVar6 = (int *)FUN_003ac4d0(0x248);\n                    /* try { // try from 001746ab to 001746af has its CatchHandler @ 00174971 */\n  FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);\n  piVar6[0x4f] = 0;\n  *piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);\n  piVar6[0x5d] = (int)(piVar6 + 0x5b);\n  piVar6[0x5e] = (int)(piVar6 + 0x5b);\n  piVar6[99] = (int)(piVar6 + 0x61);\n  piVar6[100] = (int)(piVar6 + 0x61);\n  piVar6[0x69] = (int)(piVar6 + 0x67);\n  piVar6[0x6a] = (int)(piVar6 + 0x67);\n  piVar6[0x6f] = (int)(piVar6 + 0x6d);\n  piVar6[0x70] = (int)(piVar6 + 0x6d);\n  piVar6[0x50] = 0;\n  piVar6[0x51] = 0;\n  piVar6[0x52] = 0;\n  piVar6[0x53] = 0;\n  piVar6[0x54] = 0;\n  piVar6[0x55] = 0;\n  piVar6[0x56] = 0;\n  piVar6[0x57] = 0;\n  piVar6[0x58] = 0;\n  piVar6[0x59] = 0;\n  piVar6[0x5b] = 0;\n  piVar6[0x5c] = 0;\n  piVar6[0x5f] = 0;\n  piVar6[0x61] = 0;\n  piVar6[0x62] = 0;\n  piVar6[0x65] = 0;\n  piVar6[0x67] = 0;\n  piVar6[0x68] = 0;\n  piVar6[0x6b] = 0;\n  piVar6[0x6d] = 0;\n  piVar6[0x6e] = 0;\n  piVar6[0x71] = 0;\n  piVar6[0x73] = 0;\n  bVar1 = *(byte *)(piVar6 + 0x79);\n  piVar6[0x75] = (int)(piVar6 + 0x73);\n  piVar6[0x76] = (int)(piVar6 + 0x73);\n  piVar6[0x74] = 0;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;\n  piVar6[0x77] = 0;\n  piVar6[0x78] = 0;\n  piVar6[0x7a] = 0;\n  piVar6[0x7b] = 0;\n  piVar6[0x7c] = 0;\n  piVar6[0x7d] = 0;\n  piVar6[0x7e] = 0;\n  piVar6[0x7f] = 0;\n  piVar6[0x80] = 0;\n  piVar6[0x81] = 0;\n  piVar6[0x82] = 0;\n  piVar6[0x83] = 0;\n  piVar6[0x84] = 0;\n  piVar6[0x85] = 0;\n  piVar6[0x86] = 0;\n  piVar6[0x87] = 0;\n  piVar6[0x88] = 0;\n  piVar6[0x89] = 0;\n  piVar6[0x8a] = -1;\n  piVar6[0x8b] = 0;\n  piVar6[0x8c] = 0;\n  piVar6[0x8d] = 0;\n  piVar6[0x8e] = 0;\n  piVar6[0x8f] = 0;\n  piVar6[0x90] = 0;\n  piVar6[0x91] = 0;\n  iVar3 = *param_6;\n  bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;\n  *(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;\n  FUN_00294830(piVar6);\n  return piVar6;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "byte bVar4;" type_identifier identifier ;) (declaration "char cVar5;" primitive_type identifier ;) (declaration "int *piVar6;" primitive_type (pointer_declarator "*piVar6" * identifier) ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "ushort uVar8;" type_identifier identifier ;) (declaration "int unaff_EDI;" primitive_type identifier ;) (expression_statement "FUN_00074f0a();" (call_expression "FUN_00074f0a()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;" (assignment_expression "uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8" identifier = (binary_expression "*(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8" (binary_expression "*(ushort *)(*param_6 + 0x10) << 8" (pointer_expression "*(ushort *)(*param_6 + 0x10)" * (cast_expression "(ushort *)(*param_6 + 0x10)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*param_6 + 0x10)" ( (binary_expression "*param_6 + 0x10" (pointer_expression "*param_6" * identifier) + number_literal) )))) << number_literal) | (binary_expression "*(ushort *)(*param_6 + 0x10) >> 8" (pointer_expression "*(ushort *)(*param_6 + 0x10)" * (cast_expression "(ushort *)(*param_6 + 0x10)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*param_6 + 0x10)" ( (binary_expression "*param_6 + 0x10" (pointer_expression "*param_6" * identifier) + number_literal) )))) >> number_literal))) ;) (if_statement "if (uVar8 != 1) {\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }" if (parenthesized_expression "(uVar8 != 1)" ( (binary_expression "uVar8 != 1" identifier != number_literal) )) (compound_statement "{\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }" { (if_statement "if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" if (parenthesized_expression "(uVar8 == 2)" ( (binary_expression "uVar8 == 2" identifier == number_literal) )) (compound_statement "{\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }" { (expression_statement "cVar5 = FUN_0023df40(param_3);" (assignment_expression "cVar5 = FUN_0023df40(param_3)" identifier = (call_expression "FUN_0023df40(param_3)" identifier (argument_list "(param_3)" ( identifier )))) ;) (if_statement "if (cVar5 != '\0') goto LAB_00174680;" if (parenthesized_expression "(cVar5 != '\0')" ( (binary_expression "cVar5 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00174680;" goto statement_identifier ;)) }) (else_clause "else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" else (if_statement "if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" if (parenthesized_expression "(uVar8 == 3)" ( (binary_expression "uVar8 == 3" identifier == number_literal) )) (compound_statement "{\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" { (expression_statement "piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);" (assignment_expression "piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6)" identifier = (cast_expression "(int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6)" identifier (argument_list "(param_1,param_2,param_3,param_4,param_5,param_6)" ( identifier , identifier , identifier , identifier , identifier , identifier ))))) ;) (return_statement "return piVar6;" return identifier ;) })))) (expression_statement "uVar2 = *param_2;" (assignment_expression "uVar2 = *param_2" identifier = (pointer_expression "*param_2" * identifier)) ;) (expression_statement "uVar7 = gettext(unaff_EDI + 0x2f2517);" (assignment_expression "uVar7 = gettext(unaff_EDI + 0x2f2517)" identifier = (call_expression "gettext(unaff_EDI + 0x2f2517)" identifier (argument_list "(unaff_EDI + 0x2f2517)" ( (binary_expression "unaff_EDI + 0x2f2517" identifier + number_literal) )))) ;) (expression_statement "FUN_0023b810(uVar7,uVar2,uVar8);" (call_expression "FUN_0023b810(uVar7,uVar2,uVar8)" identifier (argument_list "(uVar7,uVar2,uVar8)" ( identifier , identifier , identifier ))) ;) (return_statement "return (int *)0x0;" return (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (labeled_statement "LAB_00174680:\n  piVar6 = (int *)FUN_003ac4d0(0x248);" statement_identifier : (expression_statement "piVar6 = (int *)FUN_003ac4d0(0x248);" (assignment_expression "piVar6 = (int *)FUN_003ac4d0(0x248)" identifier = (cast_expression "(int *)FUN_003ac4d0(0x248)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_003ac4d0(0x248)" identifier (argument_list "(0x248)" ( number_literal ))))) ;)) comment (expression_statement "FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);" (call_expression "FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6)" identifier (argument_list "(piVar6,param_2,param_3,param_4,param_5,param_6)" ( identifier , identifier , identifier , identifier , identifier , identifier ))) ;) (expression_statement "piVar6[0x4f] = 0;" (assignment_expression "piVar6[0x4f] = 0" (subscript_expression "piVar6[0x4f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);" (assignment_expression "*piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5)" (pointer_expression "*piVar6" * identifier) = (cast_expression "(int)("R_ARM_GOTRELAX" + unaff_EDI + 5)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "("R_ARM_GOTRELAX" + unaff_EDI + 5)" ( (binary_expression ""R_ARM_GOTRELAX" + unaff_EDI + 5" (binary_expression ""R_ARM_GOTRELAX" + unaff_EDI" (string_literal ""R_ARM_GOTRELAX"" " string_content ") + identifier) + number_literal) )))) ;) (expression_statement "piVar6[0x5d] = (int)(piVar6 + 0x5b);" (assignment_expression "piVar6[0x5d] = (int)(piVar6 + 0x5b)" (subscript_expression "piVar6[0x5d]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x5b)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x5b)" ( (binary_expression "piVar6 + 0x5b" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x5e] = (int)(piVar6 + 0x5b);" (assignment_expression "piVar6[0x5e] = (int)(piVar6 + 0x5b)" (subscript_expression "piVar6[0x5e]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x5b)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x5b)" ( (binary_expression "piVar6 + 0x5b" identifier + number_literal) )))) ;) (expression_statement "piVar6[99] = (int)(piVar6 + 0x61);" (assignment_expression "piVar6[99] = (int)(piVar6 + 0x61)" (subscript_expression "piVar6[99]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x61)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x61)" ( (binary_expression "piVar6 + 0x61" identifier + number_literal) )))) ;) (expression_statement "piVar6[100] = (int)(piVar6 + 0x61);" (assignment_expression "piVar6[100] = (int)(piVar6 + 0x61)" (subscript_expression "piVar6[100]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x61)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x61)" ( (binary_expression "piVar6 + 0x61" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x69] = (int)(piVar6 + 0x67);" (assignment_expression "piVar6[0x69] = (int)(piVar6 + 0x67)" (subscript_expression "piVar6[0x69]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x67)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x67)" ( (binary_expression "piVar6 + 0x67" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x6a] = (int)(piVar6 + 0x67);" (assignment_expression "piVar6[0x6a] = (int)(piVar6 + 0x67)" (subscript_expression "piVar6[0x6a]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x67)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x67)" ( (binary_expression "piVar6 + 0x67" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x6f] = (int)(piVar6 + 0x6d);" (assignment_expression "piVar6[0x6f] = (int)(piVar6 + 0x6d)" (subscript_expression "piVar6[0x6f]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x6d)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x6d)" ( (binary_expression "piVar6 + 0x6d" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x70] = (int)(piVar6 + 0x6d);" (assignment_expression "piVar6[0x70] = (int)(piVar6 + 0x6d)" (subscript_expression "piVar6[0x70]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x6d)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x6d)" ( (binary_expression "piVar6 + 0x6d" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x50] = 0;" (assignment_expression "piVar6[0x50] = 0" (subscript_expression "piVar6[0x50]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x51] = 0;" (assignment_expression "piVar6[0x51] = 0" (subscript_expression "piVar6[0x51]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x52] = 0;" (assignment_expression "piVar6[0x52] = 0" (subscript_expression "piVar6[0x52]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x53] = 0;" (assignment_expression "piVar6[0x53] = 0" (subscript_expression "piVar6[0x53]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x54] = 0;" (assignment_expression "piVar6[0x54] = 0" (subscript_expression "piVar6[0x54]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x55] = 0;" (assignment_expression "piVar6[0x55] = 0" (subscript_expression "piVar6[0x55]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x56] = 0;" (assignment_expression "piVar6[0x56] = 0" (subscript_expression "piVar6[0x56]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x57] = 0;" (assignment_expression "piVar6[0x57] = 0" (subscript_expression "piVar6[0x57]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x58] = 0;" (assignment_expression "piVar6[0x58] = 0" (subscript_expression "piVar6[0x58]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x59] = 0;" (assignment_expression "piVar6[0x59] = 0" (subscript_expression "piVar6[0x59]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x5b] = 0;" (assignment_expression "piVar6[0x5b] = 0" (subscript_expression "piVar6[0x5b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x5c] = 0;" (assignment_expression "piVar6[0x5c] = 0" (subscript_expression "piVar6[0x5c]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x5f] = 0;" (assignment_expression "piVar6[0x5f] = 0" (subscript_expression "piVar6[0x5f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x61] = 0;" (assignment_expression "piVar6[0x61] = 0" (subscript_expression "piVar6[0x61]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x62] = 0;" (assignment_expression "piVar6[0x62] = 0" (subscript_expression "piVar6[0x62]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x65] = 0;" (assignment_expression "piVar6[0x65] = 0" (subscript_expression "piVar6[0x65]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x67] = 0;" (assignment_expression "piVar6[0x67] = 0" (subscript_expression "piVar6[0x67]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x68] = 0;" (assignment_expression "piVar6[0x68] = 0" (subscript_expression "piVar6[0x68]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x6b] = 0;" (assignment_expression "piVar6[0x6b] = 0" (subscript_expression "piVar6[0x6b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x6d] = 0;" (assignment_expression "piVar6[0x6d] = 0" (subscript_expression "piVar6[0x6d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x6e] = 0;" (assignment_expression "piVar6[0x6e] = 0" (subscript_expression "piVar6[0x6e]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x71] = 0;" (assignment_expression "piVar6[0x71] = 0" (subscript_expression "piVar6[0x71]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x73] = 0;" (assignment_expression "piVar6[0x73] = 0" (subscript_expression "piVar6[0x73]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "bVar1 = *(byte *)(piVar6 + 0x79);" (assignment_expression "bVar1 = *(byte *)(piVar6 + 0x79)" identifier = (pointer_expression "*(byte *)(piVar6 + 0x79)" * (cast_expression "(byte *)(piVar6 + 0x79)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar6 + 0x79)" ( (binary_expression "piVar6 + 0x79" identifier + number_literal) ))))) ;) (expression_statement "piVar6[0x75] = (int)(piVar6 + 0x73);" (assignment_expression "piVar6[0x75] = (int)(piVar6 + 0x73)" (subscript_expression "piVar6[0x75]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x73)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x73)" ( (binary_expression "piVar6 + 0x73" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x76] = (int)(piVar6 + 0x73);" (assignment_expression "piVar6[0x76] = (int)(piVar6 + 0x73)" (subscript_expression "piVar6[0x76]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x73)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x73)" ( (binary_expression "piVar6 + 0x73" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x74] = 0;" (assignment_expression "piVar6[0x74] = 0" (subscript_expression "piVar6[0x74]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;" (assignment_expression "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8" (pointer_expression "*(byte *)(piVar6 + 0x79)" * (cast_expression "(byte *)(piVar6 + 0x79)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar6 + 0x79)" ( (binary_expression "piVar6 + 0x79" identifier + number_literal) )))) = (binary_expression "bVar1 & 0xf3 | 8" (binary_expression "bVar1 & 0xf3" identifier & number_literal) | number_literal)) ;) (expression_statement "piVar6[0x77] = 0;" (assignment_expression "piVar6[0x77] = 0" (subscript_expression "piVar6[0x77]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x78] = 0;" (assignment_expression "piVar6[0x78] = 0" (subscript_expression "piVar6[0x78]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7a] = 0;" (assignment_expression "piVar6[0x7a] = 0" (subscript_expression "piVar6[0x7a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7b] = 0;" (assignment_expression "piVar6[0x7b] = 0" (subscript_expression "piVar6[0x7b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7c] = 0;" (assignment_expression "piVar6[0x7c] = 0" (subscript_expression "piVar6[0x7c]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7d] = 0;" (assignment_expression "piVar6[0x7d] = 0" (subscript_expression "piVar6[0x7d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7e] = 0;" (assignment_expression "piVar6[0x7e] = 0" (subscript_expression "piVar6[0x7e]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7f] = 0;" (assignment_expression "piVar6[0x7f] = 0" (subscript_expression "piVar6[0x7f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x80] = 0;" (assignment_expression "piVar6[0x80] = 0" (subscript_expression "piVar6[0x80]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x81] = 0;" (assignment_expression "piVar6[0x81] = 0" (subscript_expression "piVar6[0x81]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x82] = 0;" (assignment_expression "piVar6[0x82] = 0" (subscript_expression "piVar6[0x82]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x83] = 0;" (assignment_expression "piVar6[0x83] = 0" (subscript_expression "piVar6[0x83]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x84] = 0;" (assignment_expression "piVar6[0x84] = 0" (subscript_expression "piVar6[0x84]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x85] = 0;" (assignment_expression "piVar6[0x85] = 0" (subscript_expression "piVar6[0x85]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x86] = 0;" (assignment_expression "piVar6[0x86] = 0" (subscript_expression "piVar6[0x86]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x87] = 0;" (assignment_expression "piVar6[0x87] = 0" (subscript_expression "piVar6[0x87]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x88] = 0;" (assignment_expression "piVar6[0x88] = 0" (subscript_expression "piVar6[0x88]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x89] = 0;" (assignment_expression "piVar6[0x89] = 0" (subscript_expression "piVar6[0x89]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8a] = -1;" (assignment_expression "piVar6[0x8a] = -1" (subscript_expression "piVar6[0x8a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8b] = 0;" (assignment_expression "piVar6[0x8b] = 0" (subscript_expression "piVar6[0x8b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8c] = 0;" (assignment_expression "piVar6[0x8c] = 0" (subscript_expression "piVar6[0x8c]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8d] = 0;" (assignment_expression "piVar6[0x8d] = 0" (subscript_expression "piVar6[0x8d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8e] = 0;" (assignment_expression "piVar6[0x8e] = 0" (subscript_expression "piVar6[0x8e]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8f] = 0;" (assignment_expression "piVar6[0x8f] = 0" (subscript_expression "piVar6[0x8f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x90] = 0;" (assignment_expression "piVar6[0x90] = 0" (subscript_expression "piVar6[0x90]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x91] = 0;" (assignment_expression "piVar6[0x91] = 0" (subscript_expression "piVar6[0x91]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iVar3 = *param_6;" (assignment_expression "iVar3 = *param_6" identifier = (pointer_expression "*param_6" * identifier)) ;) (expression_statement "bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;" (assignment_expression "bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1" identifier = (binary_expression "(byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1" (call_expression "(byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19)" ( (binary_expression "(uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19" (binary_expression "(uint)*(undefined4 *)(iVar3 + 0x24)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(undefined4 *)(iVar3 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x24)" ( (binary_expression "iVar3 + 0x24" identifier + number_literal) )))) >> number_literal) ))) & number_literal)) ;) (expression_statement "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;" (assignment_expression "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4" (pointer_expression "*(byte *)(piVar6 + 0x79)" * (cast_expression "(byte *)(piVar6 + 0x79)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar6 + 0x79)" ( (binary_expression "piVar6 + 0x79" identifier + number_literal) )))) = (binary_expression "bVar1 & 0xf2 | 8 | bVar4" (binary_expression "bVar1 & 0xf2 | 8" (binary_expression "bVar1 & 0xf2" identifier & number_literal) | number_literal) | identifier)) ;) (expression_statement "*(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;" (assignment_expression "*(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4" (pointer_expression "*(byte *)(piVar6 + 0x79)" * (cast_expression "(byte *)(piVar6 + 0x79)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar6 + 0x79)" ( (binary_expression "piVar6 + 0x79" identifier + number_literal) )))) = (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4" (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8" (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0" (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02'" (cast_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5)" ( (binary_expression "(*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5" (parenthesized_expression "(*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20)" ( (binary_expression "*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20" (binary_expression "*(uint *)(iVar3 + 0x24) >> 0x18" (pointer_expression "*(uint *)(iVar3 + 0x24)" * (cast_expression "(uint *)(iVar3 + 0x24)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x24)" ( (binary_expression "iVar3 + 0x24" identifier + number_literal) )))) >> number_literal) & number_literal) )) >> number_literal) ))) * (char_literal "'\x02'" ' escape_sequence ')) | (binary_expression "bVar1 & 0xf0" identifier & number_literal)) | number_literal) | identifier)) ;) (expression_statement "FUN_00294830(piVar6);" (call_expression "FUN_00294830(piVar6)" identifier (argument_list "(piVar6)" ( identifier ))) ;) (return_statement "return piVar6;" return identifier ;) })))
(translation_unit "/* WARNING: Type propagation algorithm not settling */\n/* WARNING: Enum "DT": Some values do not have unique names */\n/* WARNING: Enum "ELFOSABI": Some values do not have unique names */\n/* DWARF original prototype: Object * do_make_elf_object(Target_mips<32,_true> * this, string *\n   name, Input_file * input_file, off_t offset, Ehdr<32,_true> * ehdr) */\n\nObject * __thiscall\nanon_unknown.dwarf_d7d43e::Target_mips<32,_true>::do_make_elf_object\n          (Target_mips<32,_true> *this,string *name,Input_file *input_file,off_t offset,\n          Ehdr<32,_true> *ehdr)\n\n{\n  Xindex **ppXVar1;\n  Object_merge_map **ppOVar2;\n  uint *puVar3;\n  _Prime_rehash_policy *p_Var4;\n  byte bVar5;\n  ushort uVar6;\n  pointer pcVar7;\n  Ehdr_data<32> *pEVar8;\n  byte bVar9;\n  bool bVar10;\n  Object *pOVar11;\n  char *format;\n  Sized_relobj_file<32,_true> *this_00;\n  uint uVar12;\n  int unaff_EDI;\n  \n  __x86_get_pc_thunk_di();\n  uVar6 = ehdr->p_->e_type;\n  uVar12 = (uint)(ushort)(uVar6 << 8 | uVar6 >> 8);\n  if (uVar12 != 1) {\n    if (uVar12 == 2) {\n      bVar10 = gold::Input_file::just_symbols(input_file);\n      if (bVar10) goto LAB_00174680;\n    }\n    else if (uVar12 == 3) {\n      pOVar11 = gold::Target::do_make_elf_object((Target *)this,name,input_file,offset,ehdr);\n      return pOVar11;\n    }\n    pcVar7 = (name->_M_dataplus)._M_p;\n    format = (char *)gettext(&UNK_002f2517 + unaff_EDI);\n    gold::gold_error(format,pcVar7,uVar12);\n    return (Object *)0x0;\n  }\nLAB_00174680:\n  this_00 = (Sized_relobj_file<32,_true> *)operator_new(0x248);\n                    /* try { // try from 001746ab to 001746af has its CatchHandler @ 00174971 */\n  gold::Sized_relobj_file<32,_true>::Sized_relobj_file(this_00,name,input_file,offset,ehdr);\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object._vptr_Object =\n       (_func_int_varargs **)0x0;\n  (this_00->super_Sized_relobj<32,_true>).super_Relobj.super_Object._vptr_Object =\n       (_func_int_varargs **)("R_ARM_GOTRELAX" + unaff_EDI + 5);\n  ppXVar1 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.xindex_;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl._M_start\n       = (pointer)ppXVar1;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n  _M_finish = (pointer)ppXVar1;\n  ppOVar2 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.object_merge_map_;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.rd_ = (Read_relocs_data *)ppOVar2;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.sd_ = (Symbols_data *)ppOVar2;\n  puVar3 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.first_dyn_reloc_;\n  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_buckets =\n       (__bucket_type *)puVar3;\n  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_bucket_count =\n       (size_type)puVar3;\n  p_Var4 = &this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy;\n  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_single_bucket =\n       (__bucket_type)p_Var4;\n  this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start = (pointer)p_Var4\n  ;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_._M_dataplus._M_p =\n       (pointer)0x0;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_._M_string_length = 0;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2.\n  _M_allocated_capacity = 0;\n  *(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 4) = 0;\n  *(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 8) = 0;\n  *(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 0xc) = 0\n  ;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.input_file_ = (Input_file *)0x0;\n  *(undefined4 *)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ = 0;\n  *(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ + 4) = 0;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.shnum_ = 0;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.xindex_ = (Xindex *)0x0;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.compressed_sections_ =\n       (Compressed_section_map *)0x0;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n  _M_end_of_storage = (pointer)0x0;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.object_merge_map_ = (Object_merge_map *)0x0;\n  *(undefined4 *)\n   &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.relocs_must_follow_section_writes_ = 0;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.reloc_counts_ = (uint *)0x0;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.first_dyn_reloc_ = 0;\n  this_00[1].super_Sized_relobj<32,_true>.super_Relobj.dyn_reloc_count_ = 0;\n  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_before_begin._M_nxt =\n       (_Hash_node_base *)0x0;\n  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy.\n  _M_max_load_factor = 0.0;\n  this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy._M_next_resize =\n       0;\n  this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish = (pointer)0x0;\n  this_00[1].elf_file_.file_ = (Object *)0x0;\n  bVar5 = (byte)this_00[1].e_type_;\n  *(Elf_file<32,_true,_gold::Object> **)((int)&this_00[1].elf_file_.shoff_ + 4) =\n       &this_00[1].elf_file_;\n  this_00[1].elf_file_.shnum_ = (uint)&this_00[1].elf_file_;\n  *(undefined4 *)&this_00[1].elf_file_.shoff_ = 0;\n  *(byte *)&this_00[1].e_type_ = bVar5 & 0xf3 | 8;\n  this_00[1].elf_file_.shstrndx_ = 0;\n  this_00[1].elf_file_.large_shndx_offset_ = 0;\n  this_00[1].symtab_shndx_ = 0;\n  this_00[1].local_symbol_count_ = 0;\n  this_00[1].output_local_symbol_count_ = 0;\n  this_00[1].output_local_dynsym_count_ = 0;\n  this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_start = (pointer)0x0;\n  this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_finish = (pointer)0x0;\n  this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_end_of_storage = (pointer)0x0;\n  this_00[1].defined_count_ = 0;\n  *(undefined4 *)&this_00[1].local_symbol_offset_ = 0;\n  *(undefined4 *)((int)&this_00[1].local_symbol_offset_ + 4) = 0;\n  *(undefined4 *)&this_00[1].local_dynsym_offset_ = 0;\n  *(undefined4 *)((int)&this_00[1].local_dynsym_offset_ + 4) = 0;\n  this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_start = (pointer)0x0;\n  this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_finish = (pointer)0x0;\n  this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_end_of_storage = (pointer)0x0;\n  this_00[1].local_plt_offsets_._M_h._M_buckets = (__bucket_type *)0x0;\n  this_00[1].local_plt_offsets_._M_h._M_bucket_count = 0xffffffff;\n  this_00[1].local_plt_offsets_._M_h._M_before_begin._M_nxt = (_Hash_node_base *)0x0;\n  this_00[1].local_plt_offsets_._M_h._M_element_count = 0;\n  this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_max_load_factor = 0.0;\n  this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_next_resize = 0;\n  this_00[1].local_plt_offsets_._M_h._M_single_bucket = (__bucket_type)0x0;\n  *(undefined4 *)&this_00[1].kept_comdat_sections_._M_t._M_impl = 0;\n  this_00[1].kept_comdat_sections_._M_t._M_impl.super__Rb_tree_header._M_header._M_color = _S_red;\n  pEVar8 = ehdr->p_;\n  bVar9 = (byte)(pEVar8->e_flags >> 0x19) & 1;\n  *(byte *)&this_00[1].e_type_ = bVar5 & 0xf2 | 8 | bVar9;\n  *(byte *)&this_00[1].e_type_ =\n       (char)((pEVar8->e_flags >> 0x18 & 0x20) >> 5) * '\x02' | bVar5 & 0xf0 | 8 | bVar9;\n  gold::Sized_relobj_file<32,_true>::do_setup(this_00);\n  return (Object *)this_00;\n}\n\n" comment comment comment comment (expression_statement "Object * __thiscall\nanon_unknown.dwarf_d7d43e::Target_mips<32,_true>::do_make_elf_object\n          (Target_mips<32,_true> *this,string *name,Input_file *input_file,off_t offset,\n          Ehdr<32,_true> *ehdr)\n\n{\n  Xindex **ppXVar1;" (update_expression "Object * __thiscall\nanon_unknown.dwarf_d7d43e::Target_mips<32,_true>::do_make_elf_object\n          (Target_mips<32,_true> *this,string *name,Input_file *input_file,off_t offset,\n          Ehdr<32,_true> *ehdr)\n\n{\n  Xindex **ppXVar1" (binary_expression "Object * __thiscall\nanon_unknown.dwarf_d7d43e::Target_mips<32,_true>::do_make_elf_object\n          (Target_mips<32,_true> *this,string *name,Input_file *input_file,off_t offset,\n          Ehdr<32,_true> *ehdr)\n\n{\n  Xindex **ppXVar1" (binary_expression "Object * __thiscall\nanon_unknown.dwarf_d7d43e::Target_mips<32" (binary_expression "Object * __thiscall\nanon_unknown.dwarf_d7d43e" identifier * (ERROR "__thiscall" identifier) (field_expression "anon_unknown.dwarf_d7d43e" identifier . field_identifier)) (ERROR "::Target_mips" : : identifier) < number_literal) (ERROR ",_true" , identifier) > (ERROR "::do_make_elf_object\n          (Target_mips<32,_true> *this,string *name,Input_file *input_file,off_t offset,\n          Ehdr<32,_true> *ehdr)\n\n{" : : (call_expression "do_make_elf_object\n          (Target_mips<32,_true> *this,string *name,Input_file *input_file,off_t offset,\n          Ehdr<32,_true> *ehdr)" identifier (argument_list "(Target_mips<32,_true> *this,string *name,Input_file *input_file,off_t offset,\n          Ehdr<32,_true> *ehdr)" ( (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *this" identifier > (pointer_expression "*this" * identifier)) , (binary_expression "string *name" identifier * identifier) , (binary_expression "Input_file *input_file" identifier * identifier) , (ERROR "off_t" identifier) identifier , (binary_expression "Ehdr<32" identifier < number_literal) , (binary_expression "_true> *ehdr" identifier > (pointer_expression "*ehdr" * identifier)) ))) {) (binary_expression "Xindex **ppXVar1" identifier * (pointer_expression "*ppXVar1" * identifier))) --) ;) (declaration "Object_merge_map **ppOVar2;" type_identifier (pointer_declarator "**ppOVar2" * (pointer_declarator "*ppOVar2" * identifier)) ;) (declaration "uint *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "_Prime_rehash_policy *p_Var4;" type_identifier (pointer_declarator "*p_Var4" * identifier) ;) (declaration "byte bVar5;" type_identifier identifier ;) (declaration "ushort uVar6;" type_identifier identifier ;) (declaration "pointer pcVar7;" type_identifier identifier ;) (expression_statement "Ehdr_data<32> *pEVar8;" (update_expression "Ehdr_data<32> *pEVar8" (binary_expression "Ehdr_data<32> *pEVar8" (binary_expression "Ehdr_data<32" identifier < number_literal) > (pointer_expression "*pEVar8" * identifier)) --) ;) (declaration "byte bVar9;" type_identifier identifier ;) (declaration "bool bVar10;" primitive_type identifier ;) (declaration "Object *pOVar11;" type_identifier (pointer_declarator "*pOVar11" * identifier) ;) (declaration "char *format;" primitive_type (pointer_declarator "*format" * identifier) ;) (expression_statement "Sized_relobj_file<32,_true> *this_00;" (update_expression "Sized_relobj_file<32,_true> *this_00" (binary_expression "Sized_relobj_file<32,_true> *this_00" (binary_expression "Sized_relobj_file<32" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*this_00" * identifier)) --) ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "int unaff_EDI;" primitive_type identifier ;) (expression_statement "__x86_get_pc_thunk_di();" (call_expression "__x86_get_pc_thunk_di()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar6 = ehdr->p_->e_type;" (assignment_expression "uVar6 = ehdr->p_->e_type" identifier = (field_expression "ehdr->p_->e_type" (field_expression "ehdr->p_" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "uVar12 = (uint)(ushort)(uVar6 << 8 | uVar6 >> 8);" (assignment_expression "uVar12 = (uint)(ushort)(uVar6 << 8 | uVar6 >> 8)" identifier = (call_expression "(uint)(ushort)(uVar6 << 8 | uVar6 >> 8)" (call_expression "(uint)(ushort)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(ushort)" ( identifier ))) (argument_list "(uVar6 << 8 | uVar6 >> 8)" ( (binary_expression "uVar6 << 8 | uVar6 >> 8" (binary_expression "uVar6 << 8" identifier << number_literal) | (binary_expression "uVar6 >> 8" identifier >> number_literal)) )))) ;) (if_statement "if (uVar12 != 1) {\n    if (uVar12 == 2) {\n      bVar10 = gold::Input_file::just_symbols(input_file);\n      if (bVar10) goto LAB_00174680;\n    }\n    else if (uVar12 == 3) {\n      pOVar11 = gold::Target::do_make_elf_object((Target *)this,name,input_file,offset,ehdr);\n      return pOVar11;\n    }\n    pcVar7 = (name->_M_dataplus)._M_p;\n    format = (char *)gettext(&UNK_002f2517 + unaff_EDI);\n    gold::gold_error(format,pcVar7,uVar12);\n    return (Object *)0x0;\n  }" if (parenthesized_expression "(uVar12 != 1)" ( (binary_expression "uVar12 != 1" identifier != number_literal) )) (compound_statement "{\n    if (uVar12 == 2) {\n      bVar10 = gold::Input_file::just_symbols(input_file);\n      if (bVar10) goto LAB_00174680;\n    }\n    else if (uVar12 == 3) {\n      pOVar11 = gold::Target::do_make_elf_object((Target *)this,name,input_file,offset,ehdr);\n      return pOVar11;\n    }\n    pcVar7 = (name->_M_dataplus)._M_p;\n    format = (char *)gettext(&UNK_002f2517 + unaff_EDI);\n    gold::gold_error(format,pcVar7,uVar12);\n    return (Object *)0x0;\n  }" { (if_statement "if (uVar12 == 2) {\n      bVar10 = gold::Input_file::just_symbols(input_file);\n      if (bVar10) goto LAB_00174680;\n    }\n    else if (uVar12 == 3) {\n      pOVar11 = gold::Target::do_make_elf_object((Target *)this,name,input_file,offset,ehdr);\n      return pOVar11;\n    }" if (parenthesized_expression "(uVar12 == 2)" ( (binary_expression "uVar12 == 2" identifier == number_literal) )) (compound_statement "{\n      bVar10 = gold::Input_file::just_symbols(input_file);\n      if (bVar10) goto LAB_00174680;\n    }" { (ERROR "bVar10 = gold::" (assignment_expression "bVar10 = gold" identifier = identifier) : :) (labeled_statement "Input_file::just_symbols(input_file);" statement_identifier : (ERROR ":" :) (expression_statement "just_symbols(input_file);" (call_expression "just_symbols(input_file)" identifier (argument_list "(input_file)" ( identifier ))) ;)) (if_statement "if (bVar10) goto LAB_00174680;" if (parenthesized_expression "(bVar10)" ( identifier )) (goto_statement "goto LAB_00174680;" goto statement_identifier ;)) }) (else_clause "else if (uVar12 == 3) {\n      pOVar11 = gold::Target::do_make_elf_object((Target *)this,name,input_file,offset,ehdr);\n      return pOVar11;\n    }" else (if_statement "if (uVar12 == 3) {\n      pOVar11 = gold::Target::do_make_elf_object((Target *)this,name,input_file,offset,ehdr);\n      return pOVar11;\n    }" if (parenthesized_expression "(uVar12 == 3)" ( (binary_expression "uVar12 == 3" identifier == number_literal) )) (compound_statement "{\n      pOVar11 = gold::Target::do_make_elf_object((Target *)this,name,input_file,offset,ehdr);\n      return pOVar11;\n    }" { (ERROR "pOVar11 = gold::" (assignment_expression "pOVar11 = gold" identifier = identifier) : :) (labeled_statement "Target::do_make_elf_object((Target *)this,name,input_file,offset,ehdr);" statement_identifier : (ERROR ":" :) (expression_statement "do_make_elf_object((Target *)this,name,input_file,offset,ehdr);" (call_expression "do_make_elf_object((Target *)this,name,input_file,offset,ehdr)" identifier (argument_list "((Target *)this,name,input_file,offset,ehdr)" ( (cast_expression "(Target *)this" ( (type_descriptor "Target *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier , identifier , identifier ))) ;)) (return_statement "return pOVar11;" return identifier ;) })))) (expression_statement "pcVar7 = (name->_M_dataplus)._M_p;" (assignment_expression "pcVar7 = (name->_M_dataplus)._M_p" identifier = (field_expression "(name->_M_dataplus)._M_p" (parenthesized_expression "(name->_M_dataplus)" ( (field_expression "name->_M_dataplus" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "format = (char *)gettext(&UNK_002f2517 + unaff_EDI);" (assignment_expression "format = (char *)gettext(&UNK_002f2517 + unaff_EDI)" identifier = (cast_expression "(char *)gettext(&UNK_002f2517 + unaff_EDI)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext(&UNK_002f2517 + unaff_EDI)" identifier (argument_list "(&UNK_002f2517 + unaff_EDI)" ( (binary_expression "&UNK_002f2517 + unaff_EDI" (pointer_expression "&UNK_002f2517" & identifier) + identifier) ))))) ;) (labeled_statement "gold::gold_error(format,pcVar7,uVar12);" statement_identifier : (ERROR ":" :) (expression_statement "gold_error(format,pcVar7,uVar12);" (call_expression "gold_error(format,pcVar7,uVar12)" identifier (argument_list "(format,pcVar7,uVar12)" ( identifier , identifier , identifier ))) ;)) (return_statement "return (Object *)0x0;" return (cast_expression "(Object *)0x0" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (labeled_statement "LAB_00174680:\n  this_00 = (Sized_relobj_file<32,_true> *)operator_new(0x248);" statement_identifier : (expression_statement "this_00 = (Sized_relobj_file<32,_true> *)operator_new(0x248);" (assignment_expression "this_00 = (Sized_relobj_file<32,_true> *)operator_new(0x248)" identifier = (parenthesized_expression "(Sized_relobj_file<32,_true> *)operator_new(0x248)" ( (comma_expression "Sized_relobj_file<32,_true> *)operator_new(0x248)" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (binary_expression "_true> *)operator_new(0x248)" identifier > (pointer_expression "*)operator_new(0x248)" * (ERROR ")" )) (call_expression "operator_new(0x248)" identifier (argument_list "(0x248)" ( number_literal )))))) ))) ;)) comment (labeled_statement "gold::Sized_relobj_file<32,_true>::Sized_relobj_file(this_00,name,input_file,offset,ehdr);" statement_identifier : (ERROR ":" :) (expression_statement "Sized_relobj_file<32,_true>::Sized_relobj_file(this_00,name,input_file,offset,ehdr);" (comma_expression "Sized_relobj_file<32,_true>::Sized_relobj_file(this_00,name,input_file,offset,ehdr)" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (binary_expression "_true>::Sized_relobj_file(this_00,name,input_file,offset,ehdr)" identifier > (ERROR "::" : :) (call_expression "Sized_relobj_file(this_00,name,input_file,offset,ehdr)" identifier (argument_list "(this_00,name,input_file,offset,ehdr)" ( identifier , identifier , identifier , identifier , identifier ))))) ;)) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object._vptr_Object =\n       (_func_int_varargs **)0x0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object._vptr_Object =\n       (_func_int_varargs **)0x0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object._vptr_Object" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(_func_int_varargs **)0x0" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "(this_00->super_Sized_relobj<32,_true>).super_Relobj.super_Object._vptr_Object =\n       (_func_int_varargs **)("R_ARM_GOTRELAX" + unaff_EDI + 5);" (assignment_expression "(this_00->super_Sized_relobj<32,_true>).super_Relobj.super_Object._vptr_Object =\n       (_func_int_varargs **)("R_ARM_GOTRELAX" + unaff_EDI + 5)" (field_expression "(this_00->super_Sized_relobj<32,_true>).super_Relobj.super_Object._vptr_Object" (field_expression "(this_00->super_Sized_relobj<32,_true>).super_Relobj.super_Object" (field_expression "(this_00->super_Sized_relobj<32,_true>).super_Relobj" (parenthesized_expression "(this_00->super_Sized_relobj<32,_true>)" ( (comma_expression "this_00->super_Sized_relobj<32,_true" (binary_expression "this_00->super_Sized_relobj<32" (field_expression "this_00->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(_func_int_varargs **)("R_ARM_GOTRELAX" + unaff_EDI + 5)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "("R_ARM_GOTRELAX" + unaff_EDI + 5)" ( (binary_expression ""R_ARM_GOTRELAX" + unaff_EDI + 5" (binary_expression ""R_ARM_GOTRELAX" + unaff_EDI" (string_literal ""R_ARM_GOTRELAX"" " string_content ") + identifier) + number_literal) )))) ;) (expression_statement "ppXVar1 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.xindex_;" (field_expression "ppXVar1 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.xindex_" (field_expression "ppXVar1 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object" (field_expression "ppXVar1 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (assignment_expression "ppXVar1 = &this_00[1].super_Sized_relobj<32" identifier = (binary_expression "&this_00[1].super_Sized_relobj<32" (pointer_expression "&this_00[1].super_Sized_relobj" & (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier)) < number_literal)) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl._M_start\n       = (pointer)ppXVar1;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl._M_start\n       = (pointer)ppXVar1" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl._M_start" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . 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 "(pointer)ppXVar1" ( (type_descriptor "pointer" type_identifier) ) identifier)) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n  _M_finish = (pointer)ppXVar1;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n  _M_finish = (pointer)ppXVar1" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n  _M_finish" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . 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 "(pointer)ppXVar1" ( (type_descriptor "pointer" type_identifier) ) identifier)) ;) (expression_statement "ppOVar2 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.object_merge_map_;" (field_expression "ppOVar2 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.object_merge_map_" (field_expression "ppOVar2 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (assignment_expression "ppOVar2 = &this_00[1].super_Sized_relobj<32" identifier = (binary_expression "&this_00[1].super_Sized_relobj<32" (pointer_expression "&this_00[1].super_Sized_relobj" & (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier)) < number_literal)) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.rd_ = (Read_relocs_data *)ppOVar2;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.rd_ = (Read_relocs_data *)ppOVar2" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.rd_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) = (cast_expression "(Read_relocs_data *)ppOVar2" ( (type_descriptor "Read_relocs_data *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.sd_ = (Symbols_data *)ppOVar2;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.sd_ = (Symbols_data *)ppOVar2" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.sd_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) = (cast_expression "(Symbols_data *)ppOVar2" ( (type_descriptor "Symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "puVar3 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.first_dyn_reloc_;" (field_expression "puVar3 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.first_dyn_reloc_" (field_expression "puVar3 = &this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (assignment_expression "puVar3 = &this_00[1].super_Sized_relobj<32" identifier = (binary_expression "&this_00[1].super_Sized_relobj<32" (pointer_expression "&this_00[1].super_Sized_relobj" & (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier)) < number_literal)) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_buckets =\n       (__bucket_type *)puVar3;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_buckets =\n       (__bucket_type *)puVar3" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_buckets" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(__bucket_type *)puVar3" ( (type_descriptor "__bucket_type *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_bucket_count =\n       (size_type)puVar3;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_bucket_count =\n       (size_type)puVar3" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_bucket_count" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(size_type)puVar3" ( (type_descriptor "size_type" type_identifier) ) identifier)) ;) (expression_statement "p_Var4 = &this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy;" (field_expression "p_Var4 = &this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy" (field_expression "p_Var4 = &this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h" (field_expression "p_Var4 = &this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_" (assignment_expression "p_Var4 = &this_00[1].super_Sized_relobj<32" identifier = (binary_expression "&this_00[1].super_Sized_relobj<32" (pointer_expression "&this_00[1].super_Sized_relobj" & (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier)) < number_literal)) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_single_bucket =\n       (__bucket_type)p_Var4;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_single_bucket =\n       (__bucket_type)p_Var4" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_single_bucket" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(__bucket_type)p_Var4" ( (type_descriptor "__bucket_type" type_identifier) ) identifier)) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start = (pointer)p_Var4\n  ;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start = (pointer)p_Var4" (field_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start" (field_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int" (field_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base" (field_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) < identifier) (ERROR ",_std::allocator" , identifier : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)p_Var4" ( (type_descriptor "pointer" type_identifier) ) identifier)) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_._M_dataplus._M_p =\n       (pointer)0x0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_._M_dataplus._M_p =\n       (pointer)0x0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_._M_dataplus._M_p" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_._M_dataplus" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_._M_string_length = 0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_._M_string_length = 0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_._M_string_length" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2.\n  _M_allocated_capacity = 0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2.\n  _M_allocated_capacity = 0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2.\n  _M_allocated_capacity" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 4) = 0;" (assignment_expression "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 4) = 0" (pointer_expression "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 4)" * (cast_expression "(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 4)" ( (comma_expression "(int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 4" (binary_expression "(int)&this_00[1].super_Sized_relobj<32" (cast_expression "(int)&this_00[1].super_Sized_relobj" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00[1].super_Sized_relobj" & (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier))) < number_literal) , (binary_expression "_true>.super_Relobj.super_Object.name_.field_2 + 4" (field_expression "_true>.super_Relobj.super_Object.name_.field_2" (field_expression "_true>.super_Relobj.super_Object.name_" (field_expression "_true>.super_Relobj.super_Object" (field_expression "_true>.super_Relobj" identifier (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) + number_literal)) )))) = number_literal) ;) (expression_statement "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 8) = 0;" (assignment_expression "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 8) = 0" (pointer_expression "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 8)" * (cast_expression "(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 8)" ( (comma_expression "(int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 8" (binary_expression "(int)&this_00[1].super_Sized_relobj<32" (cast_expression "(int)&this_00[1].super_Sized_relobj" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00[1].super_Sized_relobj" & (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier))) < number_literal) , (binary_expression "_true>.super_Relobj.super_Object.name_.field_2 + 8" (field_expression "_true>.super_Relobj.super_Object.name_.field_2" (field_expression "_true>.super_Relobj.super_Object.name_" (field_expression "_true>.super_Relobj.super_Object" (field_expression "_true>.super_Relobj" identifier (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) + number_literal)) )))) = number_literal) ;) (expression_statement "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 0xc) = 0\n  ;" (assignment_expression "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 0xc) = 0" (pointer_expression "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 0xc)" * (cast_expression "(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 0xc)" ( (comma_expression "(int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.name_.field_2 + 0xc" (binary_expression "(int)&this_00[1].super_Sized_relobj<32" (cast_expression "(int)&this_00[1].super_Sized_relobj" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00[1].super_Sized_relobj" & (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier))) < number_literal) , (binary_expression "_true>.super_Relobj.super_Object.name_.field_2 + 0xc" (field_expression "_true>.super_Relobj.super_Object.name_.field_2" (field_expression "_true>.super_Relobj.super_Object.name_" (field_expression "_true>.super_Relobj.super_Object" (field_expression "_true>.super_Relobj" identifier (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) + number_literal)) )))) = number_literal) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.input_file_ = (Input_file *)0x0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.input_file_ = (Input_file *)0x0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.input_file_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(Input_file *)0x0" ( (type_descriptor "Input_file *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "*(undefined4 *)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ = 0;" (assignment_expression "*(undefined4 *)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ = 0" (field_expression "*(undefined4 *)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_" (field_expression "*(undefined4 *)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object" (field_expression "*(undefined4 *)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "*(undefined4 *)&this_00[1].super_Sized_relobj<32" (pointer_expression "*(undefined4 *)&this_00[1].super_Sized_relobj" * (cast_expression "(undefined4 *)&this_00[1].super_Sized_relobj" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00[1].super_Sized_relobj" & (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier)))) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ + 4) = 0;" (assignment_expression "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ + 4) = 0" (pointer_expression "*(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ + 4)" * (cast_expression "(undefined4 *)\n   ((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ + 4)" ( (comma_expression "(int)&this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.offset_ + 4" (binary_expression "(int)&this_00[1].super_Sized_relobj<32" (cast_expression "(int)&this_00[1].super_Sized_relobj" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00[1].super_Sized_relobj" & (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier))) < number_literal) , (binary_expression "_true>.super_Relobj.super_Object.offset_ + 4" (field_expression "_true>.super_Relobj.super_Object.offset_" (field_expression "_true>.super_Relobj.super_Object" (field_expression "_true>.super_Relobj" identifier (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) + number_literal)) )))) = number_literal) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.shnum_ = 0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.shnum_ = 0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.shnum_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.xindex_ = (Xindex *)0x0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.xindex_ = (Xindex *)0x0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.xindex_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(Xindex *)0x0" ( (type_descriptor "Xindex *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.compressed_sections_ =\n       (Compressed_section_map *)0x0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.compressed_sections_ =\n       (Compressed_section_map *)0x0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object.compressed_sections_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.super_Object" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(Compressed_section_map *)0x0" ( (type_descriptor "Compressed_section_map *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n  _M_end_of_storage = (pointer)0x0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n  _M_end_of_storage = (pointer)0x0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n  _M_end_of_storage" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold::Output_section*,_std" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base<gold" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_.\n  super__Vector_base" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.output_sections_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . 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 "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.object_merge_map_ = (Object_merge_map *)0x0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.object_merge_map_ = (Object_merge_map *)0x0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.object_merge_map_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) = (cast_expression "(Object_merge_map *)0x0" ( (type_descriptor "Object_merge_map *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "*(undefined4 *)\n   &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.relocs_must_follow_section_writes_ = 0;" (assignment_expression "*(undefined4 *)\n   &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.relocs_must_follow_section_writes_ = 0" (field_expression "*(undefined4 *)\n   &this_00[1].super_Sized_relobj<32,_true>.super_Relobj.relocs_must_follow_section_writes_" (field_expression "*(undefined4 *)\n   &this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "*(undefined4 *)\n   &this_00[1].super_Sized_relobj<32" (pointer_expression "*(undefined4 *)\n   &this_00[1].super_Sized_relobj" * (cast_expression "(undefined4 *)\n   &this_00[1].super_Sized_relobj" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00[1].super_Sized_relobj" & (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier)))) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.reloc_counts_ = (uint *)0x0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.reloc_counts_ = (uint *)0x0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.reloc_counts_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.first_dyn_reloc_ = 0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.first_dyn_reloc_ = 0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.first_dyn_reloc_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.dyn_reloc_count_ = 0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.dyn_reloc_count_ = 0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj.dyn_reloc_count_" (field_expression "this_00[1].super_Sized_relobj<32,_true>.super_Relobj" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_before_begin._M_nxt =\n       (_Hash_node_base *)0x0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_before_begin._M_nxt =\n       (_Hash_node_base *)0x0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_before_begin._M_nxt" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_before_begin" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(_Hash_node_base *)0x0" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy.\n  _M_max_load_factor = 0.0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy.\n  _M_max_load_factor = 0.0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy.\n  _M_max_load_factor" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy._M_next_resize =\n       0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy._M_next_resize =\n       0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy._M_next_resize" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h._M_rehash_policy" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_._M_h" (field_expression "this_00[1].super_Sized_relobj<32,_true>.local_got_offsets_" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish = (pointer)0x0;" (assignment_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish = (pointer)0x0" (field_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish" (field_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int,_std::allocator<unsigned_int" (binary_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base<unsigned_int" (field_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_.\n  super__Vector_base" (field_expression "this_00[1].super_Sized_relobj<32,_true>.section_offsets_" (binary_expression "this_00[1].super_Sized_relobj<32" (field_expression "this_00[1].super_Sized_relobj" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) < number_literal) (ERROR ",_true>" , identifier >) . field_identifier) . field_identifier) < identifier) (ERROR ",_std::allocator" , identifier : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "this_00[1].elf_file_.file_ = (Object *)0x0;" (assignment_expression "this_00[1].elf_file_.file_ = (Object *)0x0" (field_expression "this_00[1].elf_file_.file_" (field_expression "this_00[1].elf_file_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) = (cast_expression "(Object *)0x0" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar5 = (byte)this_00[1].e_type_;" (assignment_expression "bVar5 = (byte)this_00[1].e_type_" identifier = (cast_expression "(byte)this_00[1].e_type_" ( (type_descriptor "byte" type_identifier) ) (field_expression "this_00[1].e_type_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier))) ;) (expression_statement "*(Elf_file<32,_true,_gold::Object> **)((int)&this_00[1].elf_file_.shoff_ + 4) =\n       &this_00[1].elf_file_;" (assignment_expression "*(Elf_file<32,_true,_gold::Object> **)((int)&this_00[1].elf_file_.shoff_ + 4) =\n       &this_00[1].elf_file_" (pointer_expression "*(Elf_file<32,_true,_gold::Object> **)((int)&this_00[1].elf_file_.shoff_ + 4)" * (call_expression "(Elf_file<32,_true,_gold::Object> **)((int)&this_00[1].elf_file_.shoff_ + 4)" (parenthesized_expression "(Elf_file<32,_true,_gold::Object> **)" ( (ERROR "Elf_file<32,_true,_gold::" (comma_expression "Elf_file<32,_true,_gold" (binary_expression "Elf_file<32" identifier < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : :) (binary_expression "Object> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier))) )) (argument_list "((int)&this_00[1].elf_file_.shoff_ + 4)" ( (binary_expression "(int)&this_00[1].elf_file_.shoff_ + 4" (cast_expression "(int)&this_00[1].elf_file_.shoff_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00[1].elf_file_.shoff_" & (field_expression "this_00[1].elf_file_.shoff_" (field_expression "this_00[1].elf_file_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) )))) = (pointer_expression "&this_00[1].elf_file_" & (field_expression "this_00[1].elf_file_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier))) ;) (expression_statement "this_00[1].elf_file_.shnum_ = (uint)&this_00[1].elf_file_;" (assignment_expression "this_00[1].elf_file_.shnum_ = (uint)&this_00[1].elf_file_" (field_expression "this_00[1].elf_file_.shnum_" (field_expression "this_00[1].elf_file_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) = (binary_expression "(uint)&this_00[1].elf_file_" (parenthesized_expression "(uint)" ( identifier )) & (field_expression "this_00[1].elf_file_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier))) ;) (expression_statement "*(undefined4 *)&this_00[1].elf_file_.shoff_ = 0;" (assignment_expression "*(undefined4 *)&this_00[1].elf_file_.shoff_ = 0" (pointer_expression "*(undefined4 *)&this_00[1].elf_file_.shoff_" * (cast_expression "(undefined4 *)&this_00[1].elf_file_.shoff_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00[1].elf_file_.shoff_" & (field_expression "this_00[1].elf_file_.shoff_" (field_expression "this_00[1].elf_file_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)))) = number_literal) ;) (expression_statement "*(byte *)&this_00[1].e_type_ = bVar5 & 0xf3 | 8;" (assignment_expression "*(byte *)&this_00[1].e_type_ = bVar5 & 0xf3 | 8" (pointer_expression "*(byte *)&this_00[1].e_type_" * (cast_expression "(byte *)&this_00[1].e_type_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00[1].e_type_" & (field_expression "this_00[1].e_type_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "bVar5 & 0xf3 | 8" (binary_expression "bVar5 & 0xf3" identifier & number_literal) | number_literal)) ;) (expression_statement "this_00[1].elf_file_.shstrndx_ = 0;" (assignment_expression "this_00[1].elf_file_.shstrndx_ = 0" (field_expression "this_00[1].elf_file_.shstrndx_" (field_expression "this_00[1].elf_file_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].elf_file_.large_shndx_offset_ = 0;" (assignment_expression "this_00[1].elf_file_.large_shndx_offset_ = 0" (field_expression "this_00[1].elf_file_.large_shndx_offset_" (field_expression "this_00[1].elf_file_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].symtab_shndx_ = 0;" (assignment_expression "this_00[1].symtab_shndx_ = 0" (field_expression "this_00[1].symtab_shndx_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].local_symbol_count_ = 0;" (assignment_expression "this_00[1].local_symbol_count_ = 0" (field_expression "this_00[1].local_symbol_count_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].output_local_symbol_count_ = 0;" (assignment_expression "this_00[1].output_local_symbol_count_ = 0" (field_expression "this_00[1].output_local_symbol_count_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].output_local_dynsym_count_ = 0;" (assignment_expression "this_00[1].output_local_dynsym_count_ = 0" (field_expression "this_00[1].output_local_dynsym_count_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_start = (pointer)0x0;" (assignment_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_start = (pointer)0x0" (field_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_start" (field_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl" (binary_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_" (binary_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold" (binary_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std" (binary_expression "this_00[1].symbols_.super__Vector_base<gold" (field_expression "this_00[1].symbols_.super__Vector_base" (field_expression "this_00[1].symbols_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) < identifier) (ERROR "::Symbol" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Symbol" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_finish = (pointer)0x0;" (assignment_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_finish = (pointer)0x0" (field_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_finish" (field_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl" (binary_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_" (binary_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold" (binary_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std" (binary_expression "this_00[1].symbols_.super__Vector_base<gold" (field_expression "this_00[1].symbols_.super__Vector_base" (field_expression "this_00[1].symbols_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) < identifier) (ERROR "::Symbol" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Symbol" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_end_of_storage = (pointer)0x0;" (assignment_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_end_of_storage = (pointer)0x0" (field_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n  _M_end_of_storage" (field_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl" (binary_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_" (binary_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std::allocator<gold" (binary_expression "this_00[1].symbols_.super__Vector_base<gold::Symbol*,_std" (binary_expression "this_00[1].symbols_.super__Vector_base<gold" (field_expression "this_00[1].symbols_.super__Vector_base" (field_expression "this_00[1].symbols_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) < identifier) (ERROR "::Symbol" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Symbol" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "this_00[1].defined_count_ = 0;" (assignment_expression "this_00[1].defined_count_ = 0" (field_expression "this_00[1].defined_count_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) = number_literal) ;) (expression_statement "*(undefined4 *)&this_00[1].local_symbol_offset_ = 0;" (assignment_expression "*(undefined4 *)&this_00[1].local_symbol_offset_ = 0" (pointer_expression "*(undefined4 *)&this_00[1].local_symbol_offset_" * (cast_expression "(undefined4 *)&this_00[1].local_symbol_offset_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00[1].local_symbol_offset_" & (field_expression "this_00[1].local_symbol_offset_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier)))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)&this_00[1].local_symbol_offset_ + 4) = 0;" (assignment_expression "*(undefined4 *)((int)&this_00[1].local_symbol_offset_ + 4) = 0" (pointer_expression "*(undefined4 *)((int)&this_00[1].local_symbol_offset_ + 4)" * (cast_expression "(undefined4 *)((int)&this_00[1].local_symbol_offset_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00[1].local_symbol_offset_ + 4)" ( (binary_expression "(int)&this_00[1].local_symbol_offset_ + 4" (cast_expression "(int)&this_00[1].local_symbol_offset_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00[1].local_symbol_offset_" & (field_expression "this_00[1].local_symbol_offset_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)&this_00[1].local_dynsym_offset_ = 0;" (assignment_expression "*(undefined4 *)&this_00[1].local_dynsym_offset_ = 0" (pointer_expression "*(undefined4 *)&this_00[1].local_dynsym_offset_" * (cast_expression "(undefined4 *)&this_00[1].local_dynsym_offset_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00[1].local_dynsym_offset_" & (field_expression "this_00[1].local_dynsym_offset_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier)))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)&this_00[1].local_dynsym_offset_ + 4) = 0;" (assignment_expression "*(undefined4 *)((int)&this_00[1].local_dynsym_offset_ + 4) = 0" (pointer_expression "*(undefined4 *)((int)&this_00[1].local_dynsym_offset_ + 4)" * (cast_expression "(undefined4 *)((int)&this_00[1].local_dynsym_offset_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&this_00[1].local_dynsym_offset_ + 4)" ( (binary_expression "(int)&this_00[1].local_dynsym_offset_ + 4" (cast_expression "(int)&this_00[1].local_dynsym_offset_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_00[1].local_dynsym_offset_" & (field_expression "this_00[1].local_dynsym_offset_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_start = (pointer)0x0;" (assignment_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_start = (pointer)0x0" (field_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_start" (field_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold" (field_expression "this_00[1].local_values_.\n  super__Vector_base" (field_expression "this_00[1].local_values_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . 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 "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_finish = (pointer)0x0;" (assignment_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_finish = (pointer)0x0" (field_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_finish" (field_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold" (field_expression "this_00[1].local_values_.\n  super__Vector_base" (field_expression "this_00[1].local_values_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . 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 "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_end_of_storage = (pointer)0x0;" (assignment_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_end_of_storage = (pointer)0x0" (field_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl.\n  _M_end_of_storage" (field_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_>._M_impl" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_>_" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32>_" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold::Symbol_value<32" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std::allocator<gold" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32>,_std" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold::Symbol_value<32" (binary_expression "this_00[1].local_values_.\n  super__Vector_base<gold" (field_expression "this_00[1].local_values_.\n  super__Vector_base" (field_expression "this_00[1].local_values_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . 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 "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "this_00[1].local_plt_offsets_._M_h._M_buckets = (__bucket_type *)0x0;" (assignment_expression "this_00[1].local_plt_offsets_._M_h._M_buckets = (__bucket_type *)0x0" (field_expression "this_00[1].local_plt_offsets_._M_h._M_buckets" (field_expression "this_00[1].local_plt_offsets_._M_h" (field_expression "this_00[1].local_plt_offsets_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(__bucket_type *)0x0" ( (type_descriptor "__bucket_type *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "this_00[1].local_plt_offsets_._M_h._M_bucket_count = 0xffffffff;" (assignment_expression "this_00[1].local_plt_offsets_._M_h._M_bucket_count = 0xffffffff" (field_expression "this_00[1].local_plt_offsets_._M_h._M_bucket_count" (field_expression "this_00[1].local_plt_offsets_._M_h" (field_expression "this_00[1].local_plt_offsets_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].local_plt_offsets_._M_h._M_before_begin._M_nxt = (_Hash_node_base *)0x0;" (assignment_expression "this_00[1].local_plt_offsets_._M_h._M_before_begin._M_nxt = (_Hash_node_base *)0x0" (field_expression "this_00[1].local_plt_offsets_._M_h._M_before_begin._M_nxt" (field_expression "this_00[1].local_plt_offsets_._M_h._M_before_begin" (field_expression "this_00[1].local_plt_offsets_._M_h" (field_expression "this_00[1].local_plt_offsets_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(_Hash_node_base *)0x0" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "this_00[1].local_plt_offsets_._M_h._M_element_count = 0;" (assignment_expression "this_00[1].local_plt_offsets_._M_h._M_element_count = 0" (field_expression "this_00[1].local_plt_offsets_._M_h._M_element_count" (field_expression "this_00[1].local_plt_offsets_._M_h" (field_expression "this_00[1].local_plt_offsets_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_max_load_factor = 0.0;" (assignment_expression "this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_max_load_factor = 0.0" (field_expression "this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_max_load_factor" (field_expression "this_00[1].local_plt_offsets_._M_h._M_rehash_policy" (field_expression "this_00[1].local_plt_offsets_._M_h" (field_expression "this_00[1].local_plt_offsets_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_next_resize = 0;" (assignment_expression "this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_next_resize = 0" (field_expression "this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_next_resize" (field_expression "this_00[1].local_plt_offsets_._M_h._M_rehash_policy" (field_expression "this_00[1].local_plt_offsets_._M_h" (field_expression "this_00[1].local_plt_offsets_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00[1].local_plt_offsets_._M_h._M_single_bucket = (__bucket_type)0x0;" (assignment_expression "this_00[1].local_plt_offsets_._M_h._M_single_bucket = (__bucket_type)0x0" (field_expression "this_00[1].local_plt_offsets_._M_h._M_single_bucket" (field_expression "this_00[1].local_plt_offsets_._M_h" (field_expression "this_00[1].local_plt_offsets_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(__bucket_type)0x0" ( (type_descriptor "__bucket_type" type_identifier) ) number_literal)) ;) (expression_statement "*(undefined4 *)&this_00[1].kept_comdat_sections_._M_t._M_impl = 0;" (assignment_expression "*(undefined4 *)&this_00[1].kept_comdat_sections_._M_t._M_impl = 0" (pointer_expression "*(undefined4 *)&this_00[1].kept_comdat_sections_._M_t._M_impl" * (cast_expression "(undefined4 *)&this_00[1].kept_comdat_sections_._M_t._M_impl" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00[1].kept_comdat_sections_._M_t._M_impl" & (field_expression "this_00[1].kept_comdat_sections_._M_t._M_impl" (field_expression "this_00[1].kept_comdat_sections_._M_t" (field_expression "this_00[1].kept_comdat_sections_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier)))) = number_literal) ;) (expression_statement "this_00[1].kept_comdat_sections_._M_t._M_impl.super__Rb_tree_header._M_header._M_color = _S_red;" (assignment_expression "this_00[1].kept_comdat_sections_._M_t._M_impl.super__Rb_tree_header._M_header._M_color = _S_red" (field_expression "this_00[1].kept_comdat_sections_._M_t._M_impl.super__Rb_tree_header._M_header._M_color" (field_expression "this_00[1].kept_comdat_sections_._M_t._M_impl.super__Rb_tree_header._M_header" (field_expression "this_00[1].kept_comdat_sections_._M_t._M_impl.super__Rb_tree_header" (field_expression "this_00[1].kept_comdat_sections_._M_t._M_impl" (field_expression "this_00[1].kept_comdat_sections_._M_t" (field_expression "this_00[1].kept_comdat_sections_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = identifier) ;) (expression_statement "pEVar8 = ehdr->p_;" (assignment_expression "pEVar8 = ehdr->p_" identifier = (field_expression "ehdr->p_" identifier -> field_identifier)) ;) (expression_statement "bVar9 = (byte)(pEVar8->e_flags >> 0x19) & 1;" (assignment_expression "bVar9 = (byte)(pEVar8->e_flags >> 0x19) & 1" identifier = (binary_expression "(byte)(pEVar8->e_flags >> 0x19) & 1" (call_expression "(byte)(pEVar8->e_flags >> 0x19)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(pEVar8->e_flags >> 0x19)" ( (binary_expression "pEVar8->e_flags >> 0x19" (field_expression "pEVar8->e_flags" identifier -> field_identifier) >> number_literal) ))) & number_literal)) ;) (expression_statement "*(byte *)&this_00[1].e_type_ = bVar5 & 0xf2 | 8 | bVar9;" (assignment_expression "*(byte *)&this_00[1].e_type_ = bVar5 & 0xf2 | 8 | bVar9" (pointer_expression "*(byte *)&this_00[1].e_type_" * (cast_expression "(byte *)&this_00[1].e_type_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00[1].e_type_" & (field_expression "this_00[1].e_type_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "bVar5 & 0xf2 | 8 | bVar9" (binary_expression "bVar5 & 0xf2 | 8" (binary_expression "bVar5 & 0xf2" identifier & number_literal) | number_literal) | identifier)) ;) (expression_statement "*(byte *)&this_00[1].e_type_ =\n       (char)((pEVar8->e_flags >> 0x18 & 0x20) >> 5) * '\x02' | bVar5 & 0xf0 | 8 | bVar9;" (assignment_expression "*(byte *)&this_00[1].e_type_ =\n       (char)((pEVar8->e_flags >> 0x18 & 0x20) >> 5) * '\x02' | bVar5 & 0xf0 | 8 | bVar9" (pointer_expression "*(byte *)&this_00[1].e_type_" * (cast_expression "(byte *)&this_00[1].e_type_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00[1].e_type_" & (field_expression "this_00[1].e_type_" (subscript_expression "this_00[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "(char)((pEVar8->e_flags >> 0x18 & 0x20) >> 5) * '\x02' | bVar5 & 0xf0 | 8 | bVar9" (binary_expression "(char)((pEVar8->e_flags >> 0x18 & 0x20) >> 5) * '\x02' | bVar5 & 0xf0 | 8" (binary_expression "(char)((pEVar8->e_flags >> 0x18 & 0x20) >> 5) * '\x02' | bVar5 & 0xf0" (binary_expression "(char)((pEVar8->e_flags >> 0x18 & 0x20) >> 5) * '\x02'" (cast_expression "(char)((pEVar8->e_flags >> 0x18 & 0x20) >> 5)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "((pEVar8->e_flags >> 0x18 & 0x20) >> 5)" ( (binary_expression "(pEVar8->e_flags >> 0x18 & 0x20) >> 5" (parenthesized_expression "(pEVar8->e_flags >> 0x18 & 0x20)" ( (binary_expression "pEVar8->e_flags >> 0x18 & 0x20" (binary_expression "pEVar8->e_flags >> 0x18" (field_expression "pEVar8->e_flags" identifier -> field_identifier) >> number_literal) & number_literal) )) >> number_literal) ))) * (char_literal "'\x02'" ' escape_sequence ')) | (binary_expression "bVar5 & 0xf0" identifier & number_literal)) | number_literal) | identifier)) ;) (labeled_statement "gold::Sized_relobj_file<32,_true>::do_setup(this_00);" statement_identifier : (ERROR ":" :) (expression_statement "Sized_relobj_file<32,_true>::do_setup(this_00);" (comma_expression "Sized_relobj_file<32,_true>::do_setup(this_00)" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (binary_expression "_true>::do_setup(this_00)" identifier > (ERROR "::" : :) (call_expression "do_setup(this_00)" identifier (argument_list "(this_00)" ( identifier ))))) ;)) (return_statement "return (Object *)this_00;" return (cast_expression "(Object *)this_00" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ;) (ERROR "}" }))
(translation_unit "int * FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)\n\n{\n  byte bVar1;\n  undefined4 uVar2;\n  int iVar3;\n  byte bVar4;\n  char cVar5;\n  int *piVar6;\n  undefined4 uVar7;\n  ushort uVar8;\n  int unaff_EDI;\n  \n  FUN_00074f0a();\n  uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;\n  if (uVar8 != 1) {\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }\nLAB_00174680:\n  piVar6 = (int *)FUN_003ac4d0(0x248);\n                    \n  FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);\n  piVar6[0x4f] = 0;\n  *piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);\n  piVar6[0x5d] = (int)(piVar6 + 0x5b);\n  piVar6[0x5e] = (int)(piVar6 + 0x5b);\n  piVar6[99] = (int)(piVar6 + 0x61);\n  piVar6[100] = (int)(piVar6 + 0x61);\n  piVar6[0x69] = (int)(piVar6 + 0x67);\n  piVar6[0x6a] = (int)(piVar6 + 0x67);\n  piVar6[0x6f] = (int)(piVar6 + 0x6d);\n  piVar6[0x70] = (int)(piVar6 + 0x6d);\n  piVar6[0x50] = 0;\n  piVar6[0x51] = 0;\n  piVar6[0x52] = 0;\n  piVar6[0x53] = 0;\n  piVar6[0x54] = 0;\n  piVar6[0x55] = 0;\n  piVar6[0x56] = 0;\n  piVar6[0x57] = 0;\n  piVar6[0x58] = 0;\n  piVar6[0x59] = 0;\n  piVar6[0x5b] = 0;\n  piVar6[0x5c] = 0;\n  piVar6[0x5f] = 0;\n  piVar6[0x61] = 0;\n  piVar6[0x62] = 0;\n  piVar6[0x65] = 0;\n  piVar6[0x67] = 0;\n  piVar6[0x68] = 0;\n  piVar6[0x6b] = 0;\n  piVar6[0x6d] = 0;\n  piVar6[0x6e] = 0;\n  piVar6[0x71] = 0;\n  piVar6[0x73] = 0;\n  bVar1 = *(byte *)(piVar6 + 0x79);\n  piVar6[0x75] = (int)(piVar6 + 0x73);\n  piVar6[0x76] = (int)(piVar6 + 0x73);\n  piVar6[0x74] = 0;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;\n  piVar6[0x77] = 0;\n  piVar6[0x78] = 0;\n  piVar6[0x7a] = 0;\n  piVar6[0x7b] = 0;\n  piVar6[0x7c] = 0;\n  piVar6[0x7d] = 0;\n  piVar6[0x7e] = 0;\n  piVar6[0x7f] = 0;\n  piVar6[0x80] = 0;\n  piVar6[0x81] = 0;\n  piVar6[0x82] = 0;\n  piVar6[0x83] = 0;\n  piVar6[0x84] = 0;\n  piVar6[0x85] = 0;\n  piVar6[0x86] = 0;\n  piVar6[0x87] = 0;\n  piVar6[0x88] = 0;\n  piVar6[0x89] = 0;\n  piVar6[0x8a] = -1;\n  piVar6[0x8b] = 0;\n  piVar6[0x8c] = 0;\n  piVar6[0x8d] = 0;\n  piVar6[0x8e] = 0;\n  piVar6[0x8f] = 0;\n  piVar6[0x90] = 0;\n  piVar6[0x91] = 0;\n  iVar3 = *param_6;\n  bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;\n  *(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;\n  FUN_00294830(piVar6);\n  return piVar6;\n}\n\n" (function_definition "int * FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)\n\n{\n  byte bVar1;\n  undefined4 uVar2;\n  int iVar3;\n  byte bVar4;\n  char cVar5;\n  int *piVar6;\n  undefined4 uVar7;\n  ushort uVar8;\n  int unaff_EDI;\n  \n  FUN_00074f0a();\n  uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;\n  if (uVar8 != 1) {\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }\nLAB_00174680:\n  piVar6 = (int *)FUN_003ac4d0(0x248);\n                    \n  FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);\n  piVar6[0x4f] = 0;\n  *piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);\n  piVar6[0x5d] = (int)(piVar6 + 0x5b);\n  piVar6[0x5e] = (int)(piVar6 + 0x5b);\n  piVar6[99] = (int)(piVar6 + 0x61);\n  piVar6[100] = (int)(piVar6 + 0x61);\n  piVar6[0x69] = (int)(piVar6 + 0x67);\n  piVar6[0x6a] = (int)(piVar6 + 0x67);\n  piVar6[0x6f] = (int)(piVar6 + 0x6d);\n  piVar6[0x70] = (int)(piVar6 + 0x6d);\n  piVar6[0x50] = 0;\n  piVar6[0x51] = 0;\n  piVar6[0x52] = 0;\n  piVar6[0x53] = 0;\n  piVar6[0x54] = 0;\n  piVar6[0x55] = 0;\n  piVar6[0x56] = 0;\n  piVar6[0x57] = 0;\n  piVar6[0x58] = 0;\n  piVar6[0x59] = 0;\n  piVar6[0x5b] = 0;\n  piVar6[0x5c] = 0;\n  piVar6[0x5f] = 0;\n  piVar6[0x61] = 0;\n  piVar6[0x62] = 0;\n  piVar6[0x65] = 0;\n  piVar6[0x67] = 0;\n  piVar6[0x68] = 0;\n  piVar6[0x6b] = 0;\n  piVar6[0x6d] = 0;\n  piVar6[0x6e] = 0;\n  piVar6[0x71] = 0;\n  piVar6[0x73] = 0;\n  bVar1 = *(byte *)(piVar6 + 0x79);\n  piVar6[0x75] = (int)(piVar6 + 0x73);\n  piVar6[0x76] = (int)(piVar6 + 0x73);\n  piVar6[0x74] = 0;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;\n  piVar6[0x77] = 0;\n  piVar6[0x78] = 0;\n  piVar6[0x7a] = 0;\n  piVar6[0x7b] = 0;\n  piVar6[0x7c] = 0;\n  piVar6[0x7d] = 0;\n  piVar6[0x7e] = 0;\n  piVar6[0x7f] = 0;\n  piVar6[0x80] = 0;\n  piVar6[0x81] = 0;\n  piVar6[0x82] = 0;\n  piVar6[0x83] = 0;\n  piVar6[0x84] = 0;\n  piVar6[0x85] = 0;\n  piVar6[0x86] = 0;\n  piVar6[0x87] = 0;\n  piVar6[0x88] = 0;\n  piVar6[0x89] = 0;\n  piVar6[0x8a] = -1;\n  piVar6[0x8b] = 0;\n  piVar6[0x8c] = 0;\n  piVar6[0x8d] = 0;\n  piVar6[0x8e] = 0;\n  piVar6[0x8f] = 0;\n  piVar6[0x90] = 0;\n  piVar6[0x91] = 0;\n  iVar3 = *param_6;\n  bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;\n  *(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;\n  FUN_00294830(piVar6);\n  return piVar6;\n}" primitive_type (pointer_declarator "* FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)" * (function_declarator "FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)" identifier (parameter_list "(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "undefined4 param_4" type_identifier identifier) , (parameter_declaration "undefined4 param_5" type_identifier identifier) , (parameter_declaration "int *param_6" primitive_type (pointer_declarator "*param_6" * identifier)) )))) (compound_statement "{\n  byte bVar1;\n  undefined4 uVar2;\n  int iVar3;\n  byte bVar4;\n  char cVar5;\n  int *piVar6;\n  undefined4 uVar7;\n  ushort uVar8;\n  int unaff_EDI;\n  \n  FUN_00074f0a();\n  uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;\n  if (uVar8 != 1) {\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }\nLAB_00174680:\n  piVar6 = (int *)FUN_003ac4d0(0x248);\n                    \n  FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);\n  piVar6[0x4f] = 0;\n  *piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);\n  piVar6[0x5d] = (int)(piVar6 + 0x5b);\n  piVar6[0x5e] = (int)(piVar6 + 0x5b);\n  piVar6[99] = (int)(piVar6 + 0x61);\n  piVar6[100] = (int)(piVar6 + 0x61);\n  piVar6[0x69] = (int)(piVar6 + 0x67);\n  piVar6[0x6a] = (int)(piVar6 + 0x67);\n  piVar6[0x6f] = (int)(piVar6 + 0x6d);\n  piVar6[0x70] = (int)(piVar6 + 0x6d);\n  piVar6[0x50] = 0;\n  piVar6[0x51] = 0;\n  piVar6[0x52] = 0;\n  piVar6[0x53] = 0;\n  piVar6[0x54] = 0;\n  piVar6[0x55] = 0;\n  piVar6[0x56] = 0;\n  piVar6[0x57] = 0;\n  piVar6[0x58] = 0;\n  piVar6[0x59] = 0;\n  piVar6[0x5b] = 0;\n  piVar6[0x5c] = 0;\n  piVar6[0x5f] = 0;\n  piVar6[0x61] = 0;\n  piVar6[0x62] = 0;\n  piVar6[0x65] = 0;\n  piVar6[0x67] = 0;\n  piVar6[0x68] = 0;\n  piVar6[0x6b] = 0;\n  piVar6[0x6d] = 0;\n  piVar6[0x6e] = 0;\n  piVar6[0x71] = 0;\n  piVar6[0x73] = 0;\n  bVar1 = *(byte *)(piVar6 + 0x79);\n  piVar6[0x75] = (int)(piVar6 + 0x73);\n  piVar6[0x76] = (int)(piVar6 + 0x73);\n  piVar6[0x74] = 0;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;\n  piVar6[0x77] = 0;\n  piVar6[0x78] = 0;\n  piVar6[0x7a] = 0;\n  piVar6[0x7b] = 0;\n  piVar6[0x7c] = 0;\n  piVar6[0x7d] = 0;\n  piVar6[0x7e] = 0;\n  piVar6[0x7f] = 0;\n  piVar6[0x80] = 0;\n  piVar6[0x81] = 0;\n  piVar6[0x82] = 0;\n  piVar6[0x83] = 0;\n  piVar6[0x84] = 0;\n  piVar6[0x85] = 0;\n  piVar6[0x86] = 0;\n  piVar6[0x87] = 0;\n  piVar6[0x88] = 0;\n  piVar6[0x89] = 0;\n  piVar6[0x8a] = -1;\n  piVar6[0x8b] = 0;\n  piVar6[0x8c] = 0;\n  piVar6[0x8d] = 0;\n  piVar6[0x8e] = 0;\n  piVar6[0x8f] = 0;\n  piVar6[0x90] = 0;\n  piVar6[0x91] = 0;\n  iVar3 = *param_6;\n  bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;\n  *(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;\n  FUN_00294830(piVar6);\n  return piVar6;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "byte bVar4;" type_identifier identifier ;) (declaration "char cVar5;" primitive_type identifier ;) (declaration "int *piVar6;" primitive_type (pointer_declarator "*piVar6" * identifier) ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "ushort uVar8;" type_identifier identifier ;) (declaration "int unaff_EDI;" primitive_type identifier ;) (expression_statement "FUN_00074f0a();" (call_expression "FUN_00074f0a()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;" (assignment_expression "uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8" identifier = (binary_expression "*(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8" (binary_expression "*(ushort *)(*param_6 + 0x10) << 8" (pointer_expression "*(ushort *)(*param_6 + 0x10)" * (cast_expression "(ushort *)(*param_6 + 0x10)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*param_6 + 0x10)" ( (binary_expression "*param_6 + 0x10" (pointer_expression "*param_6" * identifier) + number_literal) )))) << number_literal) | (binary_expression "*(ushort *)(*param_6 + 0x10) >> 8" (pointer_expression "*(ushort *)(*param_6 + 0x10)" * (cast_expression "(ushort *)(*param_6 + 0x10)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*param_6 + 0x10)" ( (binary_expression "*param_6 + 0x10" (pointer_expression "*param_6" * identifier) + number_literal) )))) >> number_literal))) ;) (if_statement "if (uVar8 != 1) {\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }" if (parenthesized_expression "(uVar8 != 1)" ( (binary_expression "uVar8 != 1" identifier != number_literal) )) (compound_statement "{\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }" { (if_statement "if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" if (parenthesized_expression "(uVar8 == 2)" ( (binary_expression "uVar8 == 2" identifier == number_literal) )) (compound_statement "{\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }" { (expression_statement "cVar5 = FUN_0023df40(param_3);" (assignment_expression "cVar5 = FUN_0023df40(param_3)" identifier = (call_expression "FUN_0023df40(param_3)" identifier (argument_list "(param_3)" ( identifier )))) ;) (if_statement "if (cVar5 != '\0') goto LAB_00174680;" if (parenthesized_expression "(cVar5 != '\0')" ( (binary_expression "cVar5 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00174680;" goto statement_identifier ;)) }) (else_clause "else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" else (if_statement "if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" if (parenthesized_expression "(uVar8 == 3)" ( (binary_expression "uVar8 == 3" identifier == number_literal) )) (compound_statement "{\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" { (expression_statement "piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);" (assignment_expression "piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6)" identifier = (cast_expression "(int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6)" identifier (argument_list "(param_1,param_2,param_3,param_4,param_5,param_6)" ( identifier , identifier , identifier , identifier , identifier , identifier ))))) ;) (return_statement "return piVar6;" return identifier ;) })))) (expression_statement "uVar2 = *param_2;" (assignment_expression "uVar2 = *param_2" identifier = (pointer_expression "*param_2" * identifier)) ;) (expression_statement "uVar7 = gettext(unaff_EDI + 0x2f2517);" (assignment_expression "uVar7 = gettext(unaff_EDI + 0x2f2517)" identifier = (call_expression "gettext(unaff_EDI + 0x2f2517)" identifier (argument_list "(unaff_EDI + 0x2f2517)" ( (binary_expression "unaff_EDI + 0x2f2517" identifier + number_literal) )))) ;) (expression_statement "FUN_0023b810(uVar7,uVar2,uVar8);" (call_expression "FUN_0023b810(uVar7,uVar2,uVar8)" identifier (argument_list "(uVar7,uVar2,uVar8)" ( identifier , identifier , identifier ))) ;) (return_statement "return (int *)0x0;" return (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (labeled_statement "LAB_00174680:\n  piVar6 = (int *)FUN_003ac4d0(0x248);" statement_identifier : (expression_statement "piVar6 = (int *)FUN_003ac4d0(0x248);" (assignment_expression "piVar6 = (int *)FUN_003ac4d0(0x248)" identifier = (cast_expression "(int *)FUN_003ac4d0(0x248)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_003ac4d0(0x248)" identifier (argument_list "(0x248)" ( number_literal ))))) ;)) (expression_statement "FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);" (call_expression "FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6)" identifier (argument_list "(piVar6,param_2,param_3,param_4,param_5,param_6)" ( identifier , identifier , identifier , identifier , identifier , identifier ))) ;) (expression_statement "piVar6[0x4f] = 0;" (assignment_expression "piVar6[0x4f] = 0" (subscript_expression "piVar6[0x4f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);" (assignment_expression "*piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5)" (pointer_expression "*piVar6" * identifier) = (cast_expression "(int)("R_ARM_GOTRELAX" + unaff_EDI + 5)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "("R_ARM_GOTRELAX" + unaff_EDI + 5)" ( (binary_expression ""R_ARM_GOTRELAX" + unaff_EDI + 5" (binary_expression ""R_ARM_GOTRELAX" + unaff_EDI" (string_literal ""R_ARM_GOTRELAX"" " string_content ") + identifier) + number_literal) )))) ;) (expression_statement "piVar6[0x5d] = (int)(piVar6 + 0x5b);" (assignment_expression "piVar6[0x5d] = (int)(piVar6 + 0x5b)" (subscript_expression "piVar6[0x5d]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x5b)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x5b)" ( (binary_expression "piVar6 + 0x5b" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x5e] = (int)(piVar6 + 0x5b);" (assignment_expression "piVar6[0x5e] = (int)(piVar6 + 0x5b)" (subscript_expression "piVar6[0x5e]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x5b)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x5b)" ( (binary_expression "piVar6 + 0x5b" identifier + number_literal) )))) ;) (expression_statement "piVar6[99] = (int)(piVar6 + 0x61);" (assignment_expression "piVar6[99] = (int)(piVar6 + 0x61)" (subscript_expression "piVar6[99]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x61)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x61)" ( (binary_expression "piVar6 + 0x61" identifier + number_literal) )))) ;) (expression_statement "piVar6[100] = (int)(piVar6 + 0x61);" (assignment_expression "piVar6[100] = (int)(piVar6 + 0x61)" (subscript_expression "piVar6[100]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x61)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x61)" ( (binary_expression "piVar6 + 0x61" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x69] = (int)(piVar6 + 0x67);" (assignment_expression "piVar6[0x69] = (int)(piVar6 + 0x67)" (subscript_expression "piVar6[0x69]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x67)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x67)" ( (binary_expression "piVar6 + 0x67" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x6a] = (int)(piVar6 + 0x67);" (assignment_expression "piVar6[0x6a] = (int)(piVar6 + 0x67)" (subscript_expression "piVar6[0x6a]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x67)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x67)" ( (binary_expression "piVar6 + 0x67" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x6f] = (int)(piVar6 + 0x6d);" (assignment_expression "piVar6[0x6f] = (int)(piVar6 + 0x6d)" (subscript_expression "piVar6[0x6f]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x6d)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x6d)" ( (binary_expression "piVar6 + 0x6d" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x70] = (int)(piVar6 + 0x6d);" (assignment_expression "piVar6[0x70] = (int)(piVar6 + 0x6d)" (subscript_expression "piVar6[0x70]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x6d)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x6d)" ( (binary_expression "piVar6 + 0x6d" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x50] = 0;" (assignment_expression "piVar6[0x50] = 0" (subscript_expression "piVar6[0x50]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x51] = 0;" (assignment_expression "piVar6[0x51] = 0" (subscript_expression "piVar6[0x51]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x52] = 0;" (assignment_expression "piVar6[0x52] = 0" (subscript_expression "piVar6[0x52]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x53] = 0;" (assignment_expression "piVar6[0x53] = 0" (subscript_expression "piVar6[0x53]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x54] = 0;" (assignment_expression "piVar6[0x54] = 0" (subscript_expression "piVar6[0x54]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x55] = 0;" (assignment_expression "piVar6[0x55] = 0" (subscript_expression "piVar6[0x55]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x56] = 0;" (assignment_expression "piVar6[0x56] = 0" (subscript_expression "piVar6[0x56]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x57] = 0;" (assignment_expression "piVar6[0x57] = 0" (subscript_expression "piVar6[0x57]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x58] = 0;" (assignment_expression "piVar6[0x58] = 0" (subscript_expression "piVar6[0x58]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x59] = 0;" (assignment_expression "piVar6[0x59] = 0" (subscript_expression "piVar6[0x59]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x5b] = 0;" (assignment_expression "piVar6[0x5b] = 0" (subscript_expression "piVar6[0x5b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x5c] = 0;" (assignment_expression "piVar6[0x5c] = 0" (subscript_expression "piVar6[0x5c]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x5f] = 0;" (assignment_expression "piVar6[0x5f] = 0" (subscript_expression "piVar6[0x5f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x61] = 0;" (assignment_expression "piVar6[0x61] = 0" (subscript_expression "piVar6[0x61]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x62] = 0;" (assignment_expression "piVar6[0x62] = 0" (subscript_expression "piVar6[0x62]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x65] = 0;" (assignment_expression "piVar6[0x65] = 0" (subscript_expression "piVar6[0x65]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x67] = 0;" (assignment_expression "piVar6[0x67] = 0" (subscript_expression "piVar6[0x67]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x68] = 0;" (assignment_expression "piVar6[0x68] = 0" (subscript_expression "piVar6[0x68]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x6b] = 0;" (assignment_expression "piVar6[0x6b] = 0" (subscript_expression "piVar6[0x6b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x6d] = 0;" (assignment_expression "piVar6[0x6d] = 0" (subscript_expression "piVar6[0x6d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x6e] = 0;" (assignment_expression "piVar6[0x6e] = 0" (subscript_expression "piVar6[0x6e]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x71] = 0;" (assignment_expression "piVar6[0x71] = 0" (subscript_expression "piVar6[0x71]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x73] = 0;" (assignment_expression "piVar6[0x73] = 0" (subscript_expression "piVar6[0x73]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "bVar1 = *(byte *)(piVar6 + 0x79);" (assignment_expression "bVar1 = *(byte *)(piVar6 + 0x79)" identifier = (pointer_expression "*(byte *)(piVar6 + 0x79)" * (cast_expression "(byte *)(piVar6 + 0x79)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar6 + 0x79)" ( (binary_expression "piVar6 + 0x79" identifier + number_literal) ))))) ;) (expression_statement "piVar6[0x75] = (int)(piVar6 + 0x73);" (assignment_expression "piVar6[0x75] = (int)(piVar6 + 0x73)" (subscript_expression "piVar6[0x75]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x73)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x73)" ( (binary_expression "piVar6 + 0x73" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x76] = (int)(piVar6 + 0x73);" (assignment_expression "piVar6[0x76] = (int)(piVar6 + 0x73)" (subscript_expression "piVar6[0x76]" identifier [ number_literal ]) = (cast_expression "(int)(piVar6 + 0x73)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar6 + 0x73)" ( (binary_expression "piVar6 + 0x73" identifier + number_literal) )))) ;) (expression_statement "piVar6[0x74] = 0;" (assignment_expression "piVar6[0x74] = 0" (subscript_expression "piVar6[0x74]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;" (assignment_expression "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8" (pointer_expression "*(byte *)(piVar6 + 0x79)" * (cast_expression "(byte *)(piVar6 + 0x79)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar6 + 0x79)" ( (binary_expression "piVar6 + 0x79" identifier + number_literal) )))) = (binary_expression "bVar1 & 0xf3 | 8" (binary_expression "bVar1 & 0xf3" identifier & number_literal) | number_literal)) ;) (expression_statement "piVar6[0x77] = 0;" (assignment_expression "piVar6[0x77] = 0" (subscript_expression "piVar6[0x77]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x78] = 0;" (assignment_expression "piVar6[0x78] = 0" (subscript_expression "piVar6[0x78]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7a] = 0;" (assignment_expression "piVar6[0x7a] = 0" (subscript_expression "piVar6[0x7a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7b] = 0;" (assignment_expression "piVar6[0x7b] = 0" (subscript_expression "piVar6[0x7b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7c] = 0;" (assignment_expression "piVar6[0x7c] = 0" (subscript_expression "piVar6[0x7c]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7d] = 0;" (assignment_expression "piVar6[0x7d] = 0" (subscript_expression "piVar6[0x7d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7e] = 0;" (assignment_expression "piVar6[0x7e] = 0" (subscript_expression "piVar6[0x7e]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x7f] = 0;" (assignment_expression "piVar6[0x7f] = 0" (subscript_expression "piVar6[0x7f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x80] = 0;" (assignment_expression "piVar6[0x80] = 0" (subscript_expression "piVar6[0x80]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x81] = 0;" (assignment_expression "piVar6[0x81] = 0" (subscript_expression "piVar6[0x81]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x82] = 0;" (assignment_expression "piVar6[0x82] = 0" (subscript_expression "piVar6[0x82]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x83] = 0;" (assignment_expression "piVar6[0x83] = 0" (subscript_expression "piVar6[0x83]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x84] = 0;" (assignment_expression "piVar6[0x84] = 0" (subscript_expression "piVar6[0x84]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x85] = 0;" (assignment_expression "piVar6[0x85] = 0" (subscript_expression "piVar6[0x85]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x86] = 0;" (assignment_expression "piVar6[0x86] = 0" (subscript_expression "piVar6[0x86]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x87] = 0;" (assignment_expression "piVar6[0x87] = 0" (subscript_expression "piVar6[0x87]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x88] = 0;" (assignment_expression "piVar6[0x88] = 0" (subscript_expression "piVar6[0x88]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x89] = 0;" (assignment_expression "piVar6[0x89] = 0" (subscript_expression "piVar6[0x89]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8a] = -1;" (assignment_expression "piVar6[0x8a] = -1" (subscript_expression "piVar6[0x8a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8b] = 0;" (assignment_expression "piVar6[0x8b] = 0" (subscript_expression "piVar6[0x8b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8c] = 0;" (assignment_expression "piVar6[0x8c] = 0" (subscript_expression "piVar6[0x8c]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8d] = 0;" (assignment_expression "piVar6[0x8d] = 0" (subscript_expression "piVar6[0x8d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8e] = 0;" (assignment_expression "piVar6[0x8e] = 0" (subscript_expression "piVar6[0x8e]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x8f] = 0;" (assignment_expression "piVar6[0x8f] = 0" (subscript_expression "piVar6[0x8f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x90] = 0;" (assignment_expression "piVar6[0x90] = 0" (subscript_expression "piVar6[0x90]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar6[0x91] = 0;" (assignment_expression "piVar6[0x91] = 0" (subscript_expression "piVar6[0x91]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iVar3 = *param_6;" (assignment_expression "iVar3 = *param_6" identifier = (pointer_expression "*param_6" * identifier)) ;) (expression_statement "bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;" (assignment_expression "bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1" identifier = (binary_expression "(byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1" (call_expression "(byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19)" ( (binary_expression "(uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19" (binary_expression "(uint)*(undefined4 *)(iVar3 + 0x24)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(undefined4 *)(iVar3 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x24)" ( (binary_expression "iVar3 + 0x24" identifier + number_literal) )))) >> number_literal) ))) & number_literal)) ;) (expression_statement "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;" (assignment_expression "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4" (pointer_expression "*(byte *)(piVar6 + 0x79)" * (cast_expression "(byte *)(piVar6 + 0x79)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar6 + 0x79)" ( (binary_expression "piVar6 + 0x79" identifier + number_literal) )))) = (binary_expression "bVar1 & 0xf2 | 8 | bVar4" (binary_expression "bVar1 & 0xf2 | 8" (binary_expression "bVar1 & 0xf2" identifier & number_literal) | number_literal) | identifier)) ;) (expression_statement "*(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;" (assignment_expression "*(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4" (pointer_expression "*(byte *)(piVar6 + 0x79)" * (cast_expression "(byte *)(piVar6 + 0x79)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar6 + 0x79)" ( (binary_expression "piVar6 + 0x79" identifier + number_literal) )))) = (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4" (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8" (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0" (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02'" (cast_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5)" ( (binary_expression "(*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5" (parenthesized_expression "(*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20)" ( (binary_expression "*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20" (binary_expression "*(uint *)(iVar3 + 0x24) >> 0x18" (pointer_expression "*(uint *)(iVar3 + 0x24)" * (cast_expression "(uint *)(iVar3 + 0x24)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x24)" ( (binary_expression "iVar3 + 0x24" identifier + number_literal) )))) >> number_literal) & number_literal) )) >> number_literal) ))) * (char_literal "'\x02'" ' escape_sequence ')) | (binary_expression "bVar1 & 0xf0" identifier & number_literal)) | number_literal) | identifier)) ;) (expression_statement "FUN_00294830(piVar6);" (call_expression "FUN_00294830(piVar6)" identifier (argument_list "(piVar6)" ( identifier ))) ;) (return_statement "return piVar6;" return identifier ;) })))
(translation_unit (function_definition TYPE (pointer_declarator * (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) )))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) << LIT) | (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) >> LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , IDENT ))))) ;) (return_statement return IDENT ;) })))) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (binary_expression (string_literal " string_content ") + IDENT) + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) >> LIT) ))) & LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (binary_expression IDENT & LIT) | LIT) | IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) >> LIT) & LIT) )) >> LIT) ))) * (char_literal ' escape_sequence ')) | (binary_expression IDENT & LIT)) | LIT) | IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (return_statement return IDENT ;) })))
(function_definition "int * FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)\n\n{\n  byte bVar1;\n  undefined4 uVar2;\n  int iVar3;\n  byte bVar4;\n  char cVar5;\n  int *piVar6;\n  undefined4 uVar7;\n  ushort uVar8;\n  int unaff_EDI;\n  \n  FUN_00074f0a();\n  uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;\n  if (uVar8 != 1) {\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }\nLAB_00174680:\n  piVar6 = (int *)FUN_003ac4d0(0x248);\n                    \n  FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);\n  piVar6[0x4f] = 0;\n  *piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);\n  piVar6[0x5d] = (int)(piVar6 + 0x5b);\n  piVar6[0x5e] = (int)(piVar6 + 0x5b);\n  piVar6[99] = (int)(piVar6 + 0x61);\n  piVar6[100] = (int)(piVar6 + 0x61);\n  piVar6[0x69] = (int)(piVar6 + 0x67);\n  piVar6[0x6a] = (int)(piVar6 + 0x67);\n  piVar6[0x6f] = (int)(piVar6 + 0x6d);\n  piVar6[0x70] = (int)(piVar6 + 0x6d);\n  piVar6[0x50] = 0;\n  piVar6[0x51] = 0;\n  piVar6[0x52] = 0;\n  piVar6[0x53] = 0;\n  piVar6[0x54] = 0;\n  piVar6[0x55] = 0;\n  piVar6[0x56] = 0;\n  piVar6[0x57] = 0;\n  piVar6[0x58] = 0;\n  piVar6[0x59] = 0;\n  piVar6[0x5b] = 0;\n  piVar6[0x5c] = 0;\n  piVar6[0x5f] = 0;\n  piVar6[0x61] = 0;\n  piVar6[0x62] = 0;\n  piVar6[0x65] = 0;\n  piVar6[0x67] = 0;\n  piVar6[0x68] = 0;\n  piVar6[0x6b] = 0;\n  piVar6[0x6d] = 0;\n  piVar6[0x6e] = 0;\n  piVar6[0x71] = 0;\n  piVar6[0x73] = 0;\n  bVar1 = *(byte *)(piVar6 + 0x79);\n  piVar6[0x75] = (int)(piVar6 + 0x73);\n  piVar6[0x76] = (int)(piVar6 + 0x73);\n  piVar6[0x74] = 0;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;\n  piVar6[0x77] = 0;\n  piVar6[0x78] = 0;\n  piVar6[0x7a] = 0;\n  piVar6[0x7b] = 0;\n  piVar6[0x7c] = 0;\n  piVar6[0x7d] = 0;\n  piVar6[0x7e] = 0;\n  piVar6[0x7f] = 0;\n  piVar6[0x80] = 0;\n  piVar6[0x81] = 0;\n  piVar6[0x82] = 0;\n  piVar6[0x83] = 0;\n  piVar6[0x84] = 0;\n  piVar6[0x85] = 0;\n  piVar6[0x86] = 0;\n  piVar6[0x87] = 0;\n  piVar6[0x88] = 0;\n  piVar6[0x89] = 0;\n  piVar6[0x8a] = -1;\n  piVar6[0x8b] = 0;\n  piVar6[0x8c] = 0;\n  piVar6[0x8d] = 0;\n  piVar6[0x8e] = 0;\n  piVar6[0x8f] = 0;\n  piVar6[0x90] = 0;\n  piVar6[0x91] = 0;\n  iVar3 = *param_6;\n  bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;\n  *(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;\n  FUN_00294830(piVar6);\n  return piVar6;\n}" (primitive_type "int") (pointer_declarator "* FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)" (* "*") (function_declarator "FUN_001745c0(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)" (identifier "FUN_001745c0") (parameter_list "(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,\n                  undefined4 param_5,int *param_6)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) (, ",") (parameter_declaration "undefined4 *param_2" (type_identifier "undefined4") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) (, ",") (parameter_declaration "undefined4 param_4" (type_identifier "undefined4") (identifier "param_4")) (, ",") (parameter_declaration "undefined4 param_5" (type_identifier "undefined4") (identifier "param_5")) (, ",") (parameter_declaration "int *param_6" (primitive_type "int") (pointer_declarator "*param_6" (* "*") (identifier "param_6"))) () ")")))) (compound_statement "{\n  byte bVar1;\n  undefined4 uVar2;\n  int iVar3;\n  byte bVar4;\n  char cVar5;\n  int *piVar6;\n  undefined4 uVar7;\n  ushort uVar8;\n  int unaff_EDI;\n  \n  FUN_00074f0a();\n  uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;\n  if (uVar8 != 1) {\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }\nLAB_00174680:\n  piVar6 = (int *)FUN_003ac4d0(0x248);\n                    \n  FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);\n  piVar6[0x4f] = 0;\n  *piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);\n  piVar6[0x5d] = (int)(piVar6 + 0x5b);\n  piVar6[0x5e] = (int)(piVar6 + 0x5b);\n  piVar6[99] = (int)(piVar6 + 0x61);\n  piVar6[100] = (int)(piVar6 + 0x61);\n  piVar6[0x69] = (int)(piVar6 + 0x67);\n  piVar6[0x6a] = (int)(piVar6 + 0x67);\n  piVar6[0x6f] = (int)(piVar6 + 0x6d);\n  piVar6[0x70] = (int)(piVar6 + 0x6d);\n  piVar6[0x50] = 0;\n  piVar6[0x51] = 0;\n  piVar6[0x52] = 0;\n  piVar6[0x53] = 0;\n  piVar6[0x54] = 0;\n  piVar6[0x55] = 0;\n  piVar6[0x56] = 0;\n  piVar6[0x57] = 0;\n  piVar6[0x58] = 0;\n  piVar6[0x59] = 0;\n  piVar6[0x5b] = 0;\n  piVar6[0x5c] = 0;\n  piVar6[0x5f] = 0;\n  piVar6[0x61] = 0;\n  piVar6[0x62] = 0;\n  piVar6[0x65] = 0;\n  piVar6[0x67] = 0;\n  piVar6[0x68] = 0;\n  piVar6[0x6b] = 0;\n  piVar6[0x6d] = 0;\n  piVar6[0x6e] = 0;\n  piVar6[0x71] = 0;\n  piVar6[0x73] = 0;\n  bVar1 = *(byte *)(piVar6 + 0x79);\n  piVar6[0x75] = (int)(piVar6 + 0x73);\n  piVar6[0x76] = (int)(piVar6 + 0x73);\n  piVar6[0x74] = 0;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;\n  piVar6[0x77] = 0;\n  piVar6[0x78] = 0;\n  piVar6[0x7a] = 0;\n  piVar6[0x7b] = 0;\n  piVar6[0x7c] = 0;\n  piVar6[0x7d] = 0;\n  piVar6[0x7e] = 0;\n  piVar6[0x7f] = 0;\n  piVar6[0x80] = 0;\n  piVar6[0x81] = 0;\n  piVar6[0x82] = 0;\n  piVar6[0x83] = 0;\n  piVar6[0x84] = 0;\n  piVar6[0x85] = 0;\n  piVar6[0x86] = 0;\n  piVar6[0x87] = 0;\n  piVar6[0x88] = 0;\n  piVar6[0x89] = 0;\n  piVar6[0x8a] = -1;\n  piVar6[0x8b] = 0;\n  piVar6[0x8c] = 0;\n  piVar6[0x8d] = 0;\n  piVar6[0x8e] = 0;\n  piVar6[0x8f] = 0;\n  piVar6[0x90] = 0;\n  piVar6[0x91] = 0;\n  iVar3 = *param_6;\n  bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;\n  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;\n  *(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;\n  FUN_00294830(piVar6);\n  return piVar6;\n}" ({ "{") (declaration "byte bVar1;" (type_identifier "byte") (identifier "bVar1") (; ";")) (declaration "undefined4 uVar2;" (type_identifier "undefined4") (identifier "uVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "byte bVar4;" (type_identifier "byte") (identifier "bVar4") (; ";")) (declaration "char cVar5;" (primitive_type "char") (identifier "cVar5") (; ";")) (declaration "int *piVar6;" (primitive_type "int") (pointer_declarator "*piVar6" (* "*") (identifier "piVar6")) (; ";")) (declaration "undefined4 uVar7;" (type_identifier "undefined4") (identifier "uVar7") (; ";")) (declaration "ushort uVar8;" (type_identifier "ushort") (identifier "uVar8") (; ";")) (declaration "int unaff_EDI;" (primitive_type "int") (identifier "unaff_EDI") (; ";")) (expression_statement "FUN_00074f0a();" (call_expression "FUN_00074f0a()" (identifier "FUN_00074f0a") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;" (assignment_expression "uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8" (identifier "uVar8") (= "=") (binary_expression "*(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8" (binary_expression "*(ushort *)(*param_6 + 0x10) << 8" (pointer_expression "*(ushort *)(*param_6 + 0x10)" (* "*") (cast_expression "(ushort *)(*param_6 + 0x10)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*param_6 + 0x10)" (( "(") (binary_expression "*param_6 + 0x10" (pointer_expression "*param_6" (* "*") (identifier "param_6")) (+ "+") (number_literal "0x10")) () ")")))) (<< "<<") (number_literal "8")) (| "|") (binary_expression "*(ushort *)(*param_6 + 0x10) >> 8" (pointer_expression "*(ushort *)(*param_6 + 0x10)" (* "*") (cast_expression "(ushort *)(*param_6 + 0x10)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*param_6 + 0x10)" (( "(") (binary_expression "*param_6 + 0x10" (pointer_expression "*param_6" (* "*") (identifier "param_6")) (+ "+") (number_literal "0x10")) () ")")))) (>> ">>") (number_literal "8")))) (; ";")) (if_statement "if (uVar8 != 1) {\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }" (if "if") (parenthesized_expression "(uVar8 != 1)" (( "(") (binary_expression "uVar8 != 1" (identifier "uVar8") (!= "!=") (number_literal "1")) () ")")) (compound_statement "{\n    if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }\n    uVar2 = *param_2;\n    uVar7 = gettext(unaff_EDI + 0x2f2517);\n    FUN_0023b810(uVar7,uVar2,uVar8);\n    return (int *)0x0;\n  }" ({ "{") (if_statement "if (uVar8 == 2) {\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }\n    else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" (if "if") (parenthesized_expression "(uVar8 == 2)" (( "(") (binary_expression "uVar8 == 2" (identifier "uVar8") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n      cVar5 = FUN_0023df40(param_3);\n      if (cVar5 != '\0') goto LAB_00174680;\n    }" ({ "{") (expression_statement "cVar5 = FUN_0023df40(param_3);" (assignment_expression "cVar5 = FUN_0023df40(param_3)" (identifier "cVar5") (= "=") (call_expression "FUN_0023df40(param_3)" (identifier "FUN_0023df40") (argument_list "(param_3)" (( "(") (identifier "param_3") () ")")))) (; ";")) (if_statement "if (cVar5 != '\0') goto LAB_00174680;" (if "if") (parenthesized_expression "(cVar5 != '\0')" (( "(") (binary_expression "cVar5 != '\0'" (identifier "cVar5") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00174680;" (goto "goto") (statement_identifier "LAB_00174680") (; ";"))) (} "}")) (else_clause "else if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" (else "else") (if_statement "if (uVar8 == 3) {\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" (if "if") (parenthesized_expression "(uVar8 == 3)" (( "(") (binary_expression "uVar8 == 3" (identifier "uVar8") (== "==") (number_literal "3")) () ")")) (compound_statement "{\n      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);\n      return piVar6;\n    }" ({ "{") (expression_statement "piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);" (assignment_expression "piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6)" (identifier "piVar6") (= "=") (cast_expression "(int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6)" (identifier "FUN_00364830") (argument_list "(param_1,param_2,param_3,param_4,param_5,param_6)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (identifier "param_5") (, ",") (identifier "param_6") () ")"))))) (; ";")) (return_statement "return piVar6;" (return "return") (identifier "piVar6") (; ";")) (} "}"))))) (expression_statement "uVar2 = *param_2;" (assignment_expression "uVar2 = *param_2" (identifier "uVar2") (= "=") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) (; ";")) (expression_statement "uVar7 = gettext(unaff_EDI + 0x2f2517);" (assignment_expression "uVar7 = gettext(unaff_EDI + 0x2f2517)" (identifier "uVar7") (= "=") (call_expression "gettext(unaff_EDI + 0x2f2517)" (identifier "gettext") (argument_list "(unaff_EDI + 0x2f2517)" (( "(") (binary_expression "unaff_EDI + 0x2f2517" (identifier "unaff_EDI") (+ "+") (number_literal "0x2f2517")) () ")")))) (; ";")) (expression_statement "FUN_0023b810(uVar7,uVar2,uVar8);" (call_expression "FUN_0023b810(uVar7,uVar2,uVar8)" (identifier "FUN_0023b810") (argument_list "(uVar7,uVar2,uVar8)" (( "(") (identifier "uVar7") (, ",") (identifier "uVar2") (, ",") (identifier "uVar8") () ")"))) (; ";")) (return_statement "return (int *)0x0;" (return "return") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (; ";")) (} "}"))) (labeled_statement "LAB_00174680:\n  piVar6 = (int *)FUN_003ac4d0(0x248);" (statement_identifier "LAB_00174680") (: ":") (expression_statement "piVar6 = (int *)FUN_003ac4d0(0x248);" (assignment_expression "piVar6 = (int *)FUN_003ac4d0(0x248)" (identifier "piVar6") (= "=") (cast_expression "(int *)FUN_003ac4d0(0x248)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_003ac4d0(0x248)" (identifier "FUN_003ac4d0") (argument_list "(0x248)" (( "(") (number_literal "0x248") () ")"))))) (; ";"))) (expression_statement "FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);" (call_expression "FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6)" (identifier "FUN_0029f2f0") (argument_list "(piVar6,param_2,param_3,param_4,param_5,param_6)" (( "(") (identifier "piVar6") (, ",") (identifier "param_2") (, ",") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (identifier "param_5") (, ",") (identifier "param_6") () ")"))) (; ";")) (expression_statement "piVar6[0x4f] = 0;" (assignment_expression "piVar6[0x4f] = 0" (subscript_expression "piVar6[0x4f]" (identifier "piVar6") ([ "[") (number_literal "0x4f") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "*piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);" (assignment_expression "*piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5)" (pointer_expression "*piVar6" (* "*") (identifier "piVar6")) (= "=") (cast_expression "(int)("R_ARM_GOTRELAX" + unaff_EDI + 5)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "("R_ARM_GOTRELAX" + unaff_EDI + 5)" (( "(") (binary_expression ""R_ARM_GOTRELAX" + unaff_EDI + 5" (binary_expression ""R_ARM_GOTRELAX" + unaff_EDI" (string_literal ""R_ARM_GOTRELAX"" (" """) (string_content "R_ARM_GOTRELAX") (" """)) (+ "+") (identifier "unaff_EDI")) (+ "+") (number_literal "5")) () ")")))) (; ";")) (expression_statement "piVar6[0x5d] = (int)(piVar6 + 0x5b);" (assignment_expression "piVar6[0x5d] = (int)(piVar6 + 0x5b)" (subscript_expression "piVar6[0x5d]" (identifier "piVar6") ([ "[") (number_literal "0x5d") (] "]")) (= "=") (cast_expression "(int)(piVar6 + 0x5b)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar6 + 0x5b)" (( "(") (binary_expression "piVar6 + 0x5b" (identifier "piVar6") (+ "+") (number_literal "0x5b")) () ")")))) (; ";")) (expression_statement "piVar6[0x5e] = (int)(piVar6 + 0x5b);" (assignment_expression "piVar6[0x5e] = (int)(piVar6 + 0x5b)" (subscript_expression "piVar6[0x5e]" (identifier "piVar6") ([ "[") (number_literal "0x5e") (] "]")) (= "=") (cast_expression "(int)(piVar6 + 0x5b)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar6 + 0x5b)" (( "(") (binary_expression "piVar6 + 0x5b" (identifier "piVar6") (+ "+") (number_literal "0x5b")) () ")")))) (; ";")) (expression_statement "piVar6[99] = (int)(piVar6 + 0x61);" (assignment_expression "piVar6[99] = (int)(piVar6 + 0x61)" (subscript_expression "piVar6[99]" (identifier "piVar6") ([ "[") (number_literal "99") (] "]")) (= "=") (cast_expression "(int)(piVar6 + 0x61)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar6 + 0x61)" (( "(") (binary_expression "piVar6 + 0x61" (identifier "piVar6") (+ "+") (number_literal "0x61")) () ")")))) (; ";")) (expression_statement "piVar6[100] = (int)(piVar6 + 0x61);" (assignment_expression "piVar6[100] = (int)(piVar6 + 0x61)" (subscript_expression "piVar6[100]" (identifier "piVar6") ([ "[") (number_literal "100") (] "]")) (= "=") (cast_expression "(int)(piVar6 + 0x61)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar6 + 0x61)" (( "(") (binary_expression "piVar6 + 0x61" (identifier "piVar6") (+ "+") (number_literal "0x61")) () ")")))) (; ";")) (expression_statement "piVar6[0x69] = (int)(piVar6 + 0x67);" (assignment_expression "piVar6[0x69] = (int)(piVar6 + 0x67)" (subscript_expression "piVar6[0x69]" (identifier "piVar6") ([ "[") (number_literal "0x69") (] "]")) (= "=") (cast_expression "(int)(piVar6 + 0x67)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar6 + 0x67)" (( "(") (binary_expression "piVar6 + 0x67" (identifier "piVar6") (+ "+") (number_literal "0x67")) () ")")))) (; ";")) (expression_statement "piVar6[0x6a] = (int)(piVar6 + 0x67);" (assignment_expression "piVar6[0x6a] = (int)(piVar6 + 0x67)" (subscript_expression "piVar6[0x6a]" (identifier "piVar6") ([ "[") (number_literal "0x6a") (] "]")) (= "=") (cast_expression "(int)(piVar6 + 0x67)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar6 + 0x67)" (( "(") (binary_expression "piVar6 + 0x67" (identifier "piVar6") (+ "+") (number_literal "0x67")) () ")")))) (; ";")) (expression_statement "piVar6[0x6f] = (int)(piVar6 + 0x6d);" (assignment_expression "piVar6[0x6f] = (int)(piVar6 + 0x6d)" (subscript_expression "piVar6[0x6f]" (identifier "piVar6") ([ "[") (number_literal "0x6f") (] "]")) (= "=") (cast_expression "(int)(piVar6 + 0x6d)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar6 + 0x6d)" (( "(") (binary_expression "piVar6 + 0x6d" (identifier "piVar6") (+ "+") (number_literal "0x6d")) () ")")))) (; ";")) (expression_statement "piVar6[0x70] = (int)(piVar6 + 0x6d);" (assignment_expression "piVar6[0x70] = (int)(piVar6 + 0x6d)" (subscript_expression "piVar6[0x70]" (identifier "piVar6") ([ "[") (number_literal "0x70") (] "]")) (= "=") (cast_expression "(int)(piVar6 + 0x6d)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar6 + 0x6d)" (( "(") (binary_expression "piVar6 + 0x6d" (identifier "piVar6") (+ "+") (number_literal "0x6d")) () ")")))) (; ";")) (expression_statement "piVar6[0x50] = 0;" (assignment_expression "piVar6[0x50] = 0" (subscript_expression "piVar6[0x50]" (identifier "piVar6") ([ "[") (number_literal "0x50") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x51] = 0;" (assignment_expression "piVar6[0x51] = 0" (subscript_expression "piVar6[0x51]" (identifier "piVar6") ([ "[") (number_literal "0x51") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x52] = 0;" (assignment_expression "piVar6[0x52] = 0" (subscript_expression "piVar6[0x52]" (identifier "piVar6") ([ "[") (number_literal "0x52") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x53] = 0;" (assignment_expression "piVar6[0x53] = 0" (subscript_expression "piVar6[0x53]" (identifier "piVar6") ([ "[") (number_literal "0x53") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x54] = 0;" (assignment_expression "piVar6[0x54] = 0" (subscript_expression "piVar6[0x54]" (identifier "piVar6") ([ "[") (number_literal "0x54") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x55] = 0;" (assignment_expression "piVar6[0x55] = 0" (subscript_expression "piVar6[0x55]" (identifier "piVar6") ([ "[") (number_literal "0x55") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x56] = 0;" (assignment_expression "piVar6[0x56] = 0" (subscript_expression "piVar6[0x56]" (identifier "piVar6") ([ "[") (number_literal "0x56") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x57] = 0;" (assignment_expression "piVar6[0x57] = 0" (subscript_expression "piVar6[0x57]" (identifier "piVar6") ([ "[") (number_literal "0x57") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x58] = 0;" (assignment_expression "piVar6[0x58] = 0" (subscript_expression "piVar6[0x58]" (identifier "piVar6") ([ "[") (number_literal "0x58") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x59] = 0;" (assignment_expression "piVar6[0x59] = 0" (subscript_expression "piVar6[0x59]" (identifier "piVar6") ([ "[") (number_literal "0x59") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x5b] = 0;" (assignment_expression "piVar6[0x5b] = 0" (subscript_expression "piVar6[0x5b]" (identifier "piVar6") ([ "[") (number_literal "0x5b") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x5c] = 0;" (assignment_expression "piVar6[0x5c] = 0" (subscript_expression "piVar6[0x5c]" (identifier "piVar6") ([ "[") (number_literal "0x5c") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x5f] = 0;" (assignment_expression "piVar6[0x5f] = 0" (subscript_expression "piVar6[0x5f]" (identifier "piVar6") ([ "[") (number_literal "0x5f") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x61] = 0;" (assignment_expression "piVar6[0x61] = 0" (subscript_expression "piVar6[0x61]" (identifier "piVar6") ([ "[") (number_literal "0x61") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x62] = 0;" (assignment_expression "piVar6[0x62] = 0" (subscript_expression "piVar6[0x62]" (identifier "piVar6") ([ "[") (number_literal "0x62") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x65] = 0;" (assignment_expression "piVar6[0x65] = 0" (subscript_expression "piVar6[0x65]" (identifier "piVar6") ([ "[") (number_literal "0x65") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x67] = 0;" (assignment_expression "piVar6[0x67] = 0" (subscript_expression "piVar6[0x67]" (identifier "piVar6") ([ "[") (number_literal "0x67") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x68] = 0;" (assignment_expression "piVar6[0x68] = 0" (subscript_expression "piVar6[0x68]" (identifier "piVar6") ([ "[") (number_literal "0x68") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x6b] = 0;" (assignment_expression "piVar6[0x6b] = 0" (subscript_expression "piVar6[0x6b]" (identifier "piVar6") ([ "[") (number_literal "0x6b") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x6d] = 0;" (assignment_expression "piVar6[0x6d] = 0" (subscript_expression "piVar6[0x6d]" (identifier "piVar6") ([ "[") (number_literal "0x6d") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x6e] = 0;" (assignment_expression "piVar6[0x6e] = 0" (subscript_expression "piVar6[0x6e]" (identifier "piVar6") ([ "[") (number_literal "0x6e") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x71] = 0;" (assignment_expression "piVar6[0x71] = 0" (subscript_expression "piVar6[0x71]" (identifier "piVar6") ([ "[") (number_literal "0x71") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x73] = 0;" (assignment_expression "piVar6[0x73] = 0" (subscript_expression "piVar6[0x73]" (identifier "piVar6") ([ "[") (number_literal "0x73") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "bVar1 = *(byte *)(piVar6 + 0x79);" (assignment_expression "bVar1 = *(byte *)(piVar6 + 0x79)" (identifier "bVar1") (= "=") (pointer_expression "*(byte *)(piVar6 + 0x79)" (* "*") (cast_expression "(byte *)(piVar6 + 0x79)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar6 + 0x79)" (( "(") (binary_expression "piVar6 + 0x79" (identifier "piVar6") (+ "+") (number_literal "0x79")) () ")"))))) (; ";")) (expression_statement "piVar6[0x75] = (int)(piVar6 + 0x73);" (assignment_expression "piVar6[0x75] = (int)(piVar6 + 0x73)" (subscript_expression "piVar6[0x75]" (identifier "piVar6") ([ "[") (number_literal "0x75") (] "]")) (= "=") (cast_expression "(int)(piVar6 + 0x73)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar6 + 0x73)" (( "(") (binary_expression "piVar6 + 0x73" (identifier "piVar6") (+ "+") (number_literal "0x73")) () ")")))) (; ";")) (expression_statement "piVar6[0x76] = (int)(piVar6 + 0x73);" (assignment_expression "piVar6[0x76] = (int)(piVar6 + 0x73)" (subscript_expression "piVar6[0x76]" (identifier "piVar6") ([ "[") (number_literal "0x76") (] "]")) (= "=") (cast_expression "(int)(piVar6 + 0x73)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar6 + 0x73)" (( "(") (binary_expression "piVar6 + 0x73" (identifier "piVar6") (+ "+") (number_literal "0x73")) () ")")))) (; ";")) (expression_statement "piVar6[0x74] = 0;" (assignment_expression "piVar6[0x74] = 0" (subscript_expression "piVar6[0x74]" (identifier "piVar6") ([ "[") (number_literal "0x74") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;" (assignment_expression "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8" (pointer_expression "*(byte *)(piVar6 + 0x79)" (* "*") (cast_expression "(byte *)(piVar6 + 0x79)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar6 + 0x79)" (( "(") (binary_expression "piVar6 + 0x79" (identifier "piVar6") (+ "+") (number_literal "0x79")) () ")")))) (= "=") (binary_expression "bVar1 & 0xf3 | 8" (binary_expression "bVar1 & 0xf3" (identifier "bVar1") (& "&") (number_literal "0xf3")) (| "|") (number_literal "8"))) (; ";")) (expression_statement "piVar6[0x77] = 0;" (assignment_expression "piVar6[0x77] = 0" (subscript_expression "piVar6[0x77]" (identifier "piVar6") ([ "[") (number_literal "0x77") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x78] = 0;" (assignment_expression "piVar6[0x78] = 0" (subscript_expression "piVar6[0x78]" (identifier "piVar6") ([ "[") (number_literal "0x78") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x7a] = 0;" (assignment_expression "piVar6[0x7a] = 0" (subscript_expression "piVar6[0x7a]" (identifier "piVar6") ([ "[") (number_literal "0x7a") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x7b] = 0;" (assignment_expression "piVar6[0x7b] = 0" (subscript_expression "piVar6[0x7b]" (identifier "piVar6") ([ "[") (number_literal "0x7b") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x7c] = 0;" (assignment_expression "piVar6[0x7c] = 0" (subscript_expression "piVar6[0x7c]" (identifier "piVar6") ([ "[") (number_literal "0x7c") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x7d] = 0;" (assignment_expression "piVar6[0x7d] = 0" (subscript_expression "piVar6[0x7d]" (identifier "piVar6") ([ "[") (number_literal "0x7d") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x7e] = 0;" (assignment_expression "piVar6[0x7e] = 0" (subscript_expression "piVar6[0x7e]" (identifier "piVar6") ([ "[") (number_literal "0x7e") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x7f] = 0;" (assignment_expression "piVar6[0x7f] = 0" (subscript_expression "piVar6[0x7f]" (identifier "piVar6") ([ "[") (number_literal "0x7f") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x80] = 0;" (assignment_expression "piVar6[0x80] = 0" (subscript_expression "piVar6[0x80]" (identifier "piVar6") ([ "[") (number_literal "0x80") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x81] = 0;" (assignment_expression "piVar6[0x81] = 0" (subscript_expression "piVar6[0x81]" (identifier "piVar6") ([ "[") (number_literal "0x81") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x82] = 0;" (assignment_expression "piVar6[0x82] = 0" (subscript_expression "piVar6[0x82]" (identifier "piVar6") ([ "[") (number_literal "0x82") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x83] = 0;" (assignment_expression "piVar6[0x83] = 0" (subscript_expression "piVar6[0x83]" (identifier "piVar6") ([ "[") (number_literal "0x83") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x84] = 0;" (assignment_expression "piVar6[0x84] = 0" (subscript_expression "piVar6[0x84]" (identifier "piVar6") ([ "[") (number_literal "0x84") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x85] = 0;" (assignment_expression "piVar6[0x85] = 0" (subscript_expression "piVar6[0x85]" (identifier "piVar6") ([ "[") (number_literal "0x85") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x86] = 0;" (assignment_expression "piVar6[0x86] = 0" (subscript_expression "piVar6[0x86]" (identifier "piVar6") ([ "[") (number_literal "0x86") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x87] = 0;" (assignment_expression "piVar6[0x87] = 0" (subscript_expression "piVar6[0x87]" (identifier "piVar6") ([ "[") (number_literal "0x87") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x88] = 0;" (assignment_expression "piVar6[0x88] = 0" (subscript_expression "piVar6[0x88]" (identifier "piVar6") ([ "[") (number_literal "0x88") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x89] = 0;" (assignment_expression "piVar6[0x89] = 0" (subscript_expression "piVar6[0x89]" (identifier "piVar6") ([ "[") (number_literal "0x89") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x8a] = -1;" (assignment_expression "piVar6[0x8a] = -1" (subscript_expression "piVar6[0x8a]" (identifier "piVar6") ([ "[") (number_literal "0x8a") (] "]")) (= "=") (number_literal "-1")) (; ";")) (expression_statement "piVar6[0x8b] = 0;" (assignment_expression "piVar6[0x8b] = 0" (subscript_expression "piVar6[0x8b]" (identifier "piVar6") ([ "[") (number_literal "0x8b") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x8c] = 0;" (assignment_expression "piVar6[0x8c] = 0" (subscript_expression "piVar6[0x8c]" (identifier "piVar6") ([ "[") (number_literal "0x8c") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x8d] = 0;" (assignment_expression "piVar6[0x8d] = 0" (subscript_expression "piVar6[0x8d]" (identifier "piVar6") ([ "[") (number_literal "0x8d") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x8e] = 0;" (assignment_expression "piVar6[0x8e] = 0" (subscript_expression "piVar6[0x8e]" (identifier "piVar6") ([ "[") (number_literal "0x8e") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x8f] = 0;" (assignment_expression "piVar6[0x8f] = 0" (subscript_expression "piVar6[0x8f]" (identifier "piVar6") ([ "[") (number_literal "0x8f") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x90] = 0;" (assignment_expression "piVar6[0x90] = 0" (subscript_expression "piVar6[0x90]" (identifier "piVar6") ([ "[") (number_literal "0x90") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar6[0x91] = 0;" (assignment_expression "piVar6[0x91] = 0" (subscript_expression "piVar6[0x91]" (identifier "piVar6") ([ "[") (number_literal "0x91") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar3 = *param_6;" (assignment_expression "iVar3 = *param_6" (identifier "iVar3") (= "=") (pointer_expression "*param_6" (* "*") (identifier "param_6"))) (; ";")) (expression_statement "bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;" (assignment_expression "bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1" (identifier "bVar4") (= "=") (binary_expression "(byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1" (call_expression "(byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19)" (( "(") (binary_expression "(uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19" (binary_expression "(uint)*(undefined4 *)(iVar3 + 0x24)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x24)" (( "(") (binary_expression "iVar3 + 0x24" (identifier "iVar3") (+ "+") (number_literal "0x24")) () ")")))) (>> ">>") (number_literal "0x19")) () ")"))) (& "&") (number_literal "1"))) (; ";")) (expression_statement "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;" (assignment_expression "*(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4" (pointer_expression "*(byte *)(piVar6 + 0x79)" (* "*") (cast_expression "(byte *)(piVar6 + 0x79)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar6 + 0x79)" (( "(") (binary_expression "piVar6 + 0x79" (identifier "piVar6") (+ "+") (number_literal "0x79")) () ")")))) (= "=") (binary_expression "bVar1 & 0xf2 | 8 | bVar4" (binary_expression "bVar1 & 0xf2 | 8" (binary_expression "bVar1 & 0xf2" (identifier "bVar1") (& "&") (number_literal "0xf2")) (| "|") (number_literal "8")) (| "|") (identifier "bVar4"))) (; ";")) (expression_statement "*(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;" (assignment_expression "*(byte *)(piVar6 + 0x79) =\n       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4" (pointer_expression "*(byte *)(piVar6 + 0x79)" (* "*") (cast_expression "(byte *)(piVar6 + 0x79)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar6 + 0x79)" (( "(") (binary_expression "piVar6 + 0x79" (identifier "piVar6") (+ "+") (number_literal "0x79")) () ")")))) (= "=") (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4" (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8" (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0" (binary_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02'" (cast_expression "(char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5)" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (parenthesized_expression "((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5)" (( "(") (binary_expression "(*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5" (parenthesized_expression "(*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20)" (( "(") (binary_expression "*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20" (binary_expression "*(uint *)(iVar3 + 0x24) >> 0x18" (pointer_expression "*(uint *)(iVar3 + 0x24)" (* "*") (cast_expression "(uint *)(iVar3 + 0x24)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x24)" (( "(") (binary_expression "iVar3 + 0x24" (identifier "iVar3") (+ "+") (number_literal "0x24")) () ")")))) (>> ">>") (number_literal "0x18")) (& "&") (number_literal "0x20")) () ")")) (>> ">>") (number_literal "5")) () ")"))) (* "*") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) (| "|") (binary_expression "bVar1 & 0xf0" (identifier "bVar1") (& "&") (number_literal "0xf0"))) (| "|") (number_literal "8")) (| "|") (identifier "bVar4"))) (; ";")) (expression_statement "FUN_00294830(piVar6);" (call_expression "FUN_00294830(piVar6)" (identifier "FUN_00294830") (argument_list "(piVar6)" (( "(") (identifier "piVar6") () ")"))) (; ";")) (return_statement "return piVar6;" (return "return") (identifier "piVar6") (; ";")) (} "}")))

/* WARNING: Type propagation algorithm not settling */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Enum "ELFOSABI": Some values do not have unique names */
/* DWARF original prototype: Object * do_make_elf_object(Target_mips<32,_true> * this, string *
   name, Input_file * input_file, off_t offset, Ehdr<32,_true> * ehdr) */

var_1 * __thiscall
anon_unknown.dwarf_d7d43e::Target_mips<32,var_13>::var_9
          (Target_mips<32,var_13> *this,string *name,type_14 *input_file,off_t offset,
          Ehdr<32,var_13> *ehdr)

{
  var_2 **ppXVar1;
  type_1 **ppOVar2;
  type_2 *puVar3;
  type_3 *p_Var4;
  type_4 var_19;
  type_5 var_6;
  type_6 pcVar7;
  var_3<32> *pEVar8;
  type_4 var_20;
  bool bVar10;
  var_1 *pOVar11;
  char *format;
  var_4<32,var_13> *this_00;
  type_2 var_7;
  int var_11;
  
  var_5();
  var_6 = ehdr->p_->e_type;
  var_7 = (type_2)(type_5)(var_6 << 8 | var_6 >> 8);
  if (var_7 != 1) {
    if (var_7 == 2) {
      bVar10 = var_15::Input_file::var_8(input_file);
      if (bVar10) goto LAB_00174680;
    }
    else if (var_7 == 3) {
      pOVar11 = var_15::Target::var_9((type_7 *)this,name,input_file,offset,ehdr);
      return pOVar11;
    }
    pcVar7 = (name->_M_dataplus)._M_p;
    format = (char *)var_10(&UNK_002f2517 + var_11);
    gold::var_12(format,pcVar7,var_7);
    return (var_1 *)0x0;
  }
LAB_00174680:
  this_00 = (var_4<32,var_13> *)var_14(0x248);
                    /* try { // try from 001746ab to 001746af has its CatchHandler @ 00174971 */
  gold::var_4<32,var_13>::var_4(this_00,name,input_file,offset,ehdr);
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object._vptr_Object =
       (type_8 **)0x0;
  (this_00->super_Sized_relobj<32,var_13>).super_Relobj.super_Object._vptr_Object =
       (type_8 **)("R_ARM_GOTRELAX" + var_11 + 5);
  ppXVar1 = &this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.xindex_;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.output_sections_.
  super__Vector_base<var_15::Output_section*,var_16::allocator<var_15::Output_section*>var_17>._M_impl._M_start
       = (type_6)ppXVar1;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.output_sections_.
  super__Vector_base<var_15::Output_section*,var_16::allocator<var_15::Output_section*>var_17>._M_impl.
  _M_finish = (type_6)ppXVar1;
  ppOVar2 = &this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.object_merge_map_;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.rd_ = (type_9 *)ppOVar2;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.sd_ = (type_10 *)ppOVar2;
  puVar3 = &this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.first_dyn_reloc_;
  this_00[1].super_Sized_relobj<32,var_13>.local_got_offsets_._M_h._M_buckets =
       (type_11 *)puVar3;
  this_00[1].super_Sized_relobj<32,var_13>.local_got_offsets_._M_h._M_bucket_count =
       (type_12)puVar3;
  p_Var4 = &this_00[1].super_Sized_relobj<32,var_13>.local_got_offsets_._M_h._M_rehash_policy;
  this_00[1].super_Sized_relobj<32,var_13>.local_got_offsets_._M_h._M_single_bucket =
       (type_11)p_Var4;
  this_00[1].super_Sized_relobj<32,var_13>.section_offsets_.
  super__Vector_base<var_18,var_16::allocator<var_18>var_17>._M_impl._M_start = (type_6)p_Var4
  ;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.name_._M_dataplus._M_p =
       (type_6)0x0;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.name_._M_string_length = 0;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.name_.field_2.
  _M_allocated_capacity = 0;
  *(type_13 *)
   ((int)&this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.name_.field_2 + 4) = 0;
  *(type_13 *)
   ((int)&this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.name_.field_2 + 8) = 0;
  *(type_13 *)
   ((int)&this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.name_.field_2 + 0xc) = 0
  ;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.input_file_ = (type_14 *)0x0;
  *(type_13 *)&this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.offset_ = 0;
  *(type_13 *)
   ((int)&this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.offset_ + 4) = 0;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.shnum_ = 0;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.xindex_ = (var_2 *)0x0;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.super_Object.compressed_sections_ =
       (type_15 *)0x0;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.output_sections_.
  super__Vector_base<var_15::Output_section*,var_16::allocator<var_15::Output_section*>var_17>._M_impl.
  _M_end_of_storage = (type_6)0x0;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.object_merge_map_ = (type_1 *)0x0;
  *(type_13 *)
   &this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.relocs_must_follow_section_writes_ = 0;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.reloc_counts_ = (type_2 *)0x0;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.first_dyn_reloc_ = 0;
  this_00[1].super_Sized_relobj<32,var_13>.super_Relobj.dyn_reloc_count_ = 0;
  this_00[1].super_Sized_relobj<32,var_13>.local_got_offsets_._M_h._M_before_begin._M_nxt =
       (type_16 *)0x0;
  this_00[1].super_Sized_relobj<32,var_13>.local_got_offsets_._M_h._M_rehash_policy.
  _M_max_load_factor = 0.0;
  this_00[1].super_Sized_relobj<32,var_13>.local_got_offsets_._M_h._M_rehash_policy._M_next_resize =
       0;
  this_00[1].super_Sized_relobj<32,var_13>.section_offsets_.
  super__Vector_base<var_18,var_16::allocator<var_18>var_17>._M_impl._M_finish = (type_6)0x0;
  this_00[1].elf_file_.file_ = (var_1 *)0x0;
  var_19 = (type_4)this_00[1].e_type_;
  *(Elf_file<32,var_13,_gold::var_1> **)((int)&this_00[1].elf_file_.shoff_ + 4) =
       &this_00[1].elf_file_;
  this_00[1].elf_file_.shnum_ = (type_2)&this_00[1].elf_file_;
  *(type_13 *)&this_00[1].elf_file_.shoff_ = 0;
  *(type_4 *)&this_00[1].e_type_ = var_19 & 0xf3 | 8;
  this_00[1].elf_file_.shstrndx_ = 0;
  this_00[1].elf_file_.large_shndx_offset_ = 0;
  this_00[1].symtab_shndx_ = 0;
  this_00[1].local_symbol_count_ = 0;
  this_00[1].output_local_symbol_count_ = 0;
  this_00[1].output_local_dynsym_count_ = 0;
  this_00[1].symbols_.super__Vector_base<var_15::Symbol*,var_16::allocator<var_15::Symbol*>var_17>._M_impl.
  _M_start = (type_6)0x0;
  this_00[1].symbols_.super__Vector_base<var_15::Symbol*,var_16::allocator<var_15::Symbol*>var_17>._M_impl.
  _M_finish = (type_6)0x0;
  this_00[1].symbols_.super__Vector_base<var_15::Symbol*,var_16::allocator<var_15::Symbol*>var_17>._M_impl.
  _M_end_of_storage = (type_6)0x0;
  this_00[1].defined_count_ = 0;
  *(type_13 *)&this_00[1].local_symbol_offset_ = 0;
  *(type_13 *)((int)&this_00[1].local_symbol_offset_ + 4) = 0;
  *(type_13 *)&this_00[1].local_dynsym_offset_ = 0;
  *(type_13 *)((int)&this_00[1].local_dynsym_offset_ + 4) = 0;
  this_00[1].local_values_.
  super__Vector_base<var_15::Symbol_value<32>,var_16::allocator<var_15::Symbol_value<32>var_17>var_17>._M_impl.
  _M_start = (type_6)0x0;
  this_00[1].local_values_.
  super__Vector_base<var_15::Symbol_value<32>,var_16::allocator<var_15::Symbol_value<32>var_17>var_17>._M_impl.
  _M_finish = (type_6)0x0;
  this_00[1].local_values_.
  super__Vector_base<var_15::Symbol_value<32>,var_16::allocator<var_15::Symbol_value<32>var_17>var_17>._M_impl.
  _M_end_of_storage = (type_6)0x0;
  this_00[1].local_plt_offsets_._M_h._M_buckets = (type_11 *)0x0;
  this_00[1].local_plt_offsets_._M_h._M_bucket_count = 0xffffffff;
  this_00[1].local_plt_offsets_._M_h._M_before_begin._M_nxt = (type_16 *)0x0;
  this_00[1].local_plt_offsets_._M_h._M_element_count = 0;
  this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_max_load_factor = 0.0;
  this_00[1].local_plt_offsets_._M_h._M_rehash_policy._M_next_resize = 0;
  this_00[1].local_plt_offsets_._M_h._M_single_bucket = (type_11)0x0;
  *(type_13 *)&this_00[1].kept_comdat_sections_._M_t._M_impl = 0;
  this_00[1].kept_comdat_sections_._M_t._M_impl.super__Rb_tree_header._M_header._M_color = _S_red;
  pEVar8 = ehdr->p_;
  var_20 = (type_4)(pEVar8->e_flags >> 0x19) & 1;
  *(type_4 *)&this_00[1].e_type_ = var_19 & 0xf2 | 8 | var_20;
  *(type_4 *)&this_00[1].e_type_ =
       (char)((pEVar8->e_flags >> 0x18 & 0x20) >> 5) * '\x02' | var_19 & 0xf0 | 8 | var_20;
  gold::var_4<32,var_13>::var_21(this_00);
  return (var_1 *)this_00;
}


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

int * MASKED(undefined4 param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,
                  undefined4 param_5,int *param_6)

{
  byte bVar1;
  undefined4 uVar2;
  int iVar3;
  byte bVar4;
  char cVar5;
  int *piVar6;
  undefined4 uVar7;
  ushort uVar8;
  int unaff_EDI;
  
  FUN_00074f0a();
  uVar8 = *(ushort *)(*param_6 + 0x10) << 8 | *(ushort *)(*param_6 + 0x10) >> 8;
  if (uVar8 != 1) {
    if (uVar8 == 2) {
      cVar5 = FUN_0023df40(param_3);
      if (cVar5 != '\0') goto LAB_00174680;
    }
    else if (uVar8 == 3) {
      piVar6 = (int *)FUN_00364830(param_1,param_2,param_3,param_4,param_5,param_6);
      return piVar6;
    }
    uVar2 = *param_2;
    uVar7 = gettext(unaff_EDI + 0x2f2517);
    FUN_0023b810(uVar7,uVar2,uVar8);
    return (int *)0x0;
  }
LAB_00174680:
  piVar6 = (int *)FUN_003ac4d0(0x248);
                    /* try { // try from 001746ab to 001746af has its CatchHandler @ 00174971 */
  FUN_0029f2f0(piVar6,param_2,param_3,param_4,param_5,param_6);
  piVar6[0x4f] = 0;
  *piVar6 = (int)("R_ARM_GOTRELAX" + unaff_EDI + 5);
  piVar6[0x5d] = (int)(piVar6 + 0x5b);
  piVar6[0x5e] = (int)(piVar6 + 0x5b);
  piVar6[99] = (int)(piVar6 + 0x61);
  piVar6[100] = (int)(piVar6 + 0x61);
  piVar6[0x69] = (int)(piVar6 + 0x67);
  piVar6[0x6a] = (int)(piVar6 + 0x67);
  piVar6[0x6f] = (int)(piVar6 + 0x6d);
  piVar6[0x70] = (int)(piVar6 + 0x6d);
  piVar6[0x50] = 0;
  piVar6[0x51] = 0;
  piVar6[0x52] = 0;
  piVar6[0x53] = 0;
  piVar6[0x54] = 0;
  piVar6[0x55] = 0;
  piVar6[0x56] = 0;
  piVar6[0x57] = 0;
  piVar6[0x58] = 0;
  piVar6[0x59] = 0;
  piVar6[0x5b] = 0;
  piVar6[0x5c] = 0;
  piVar6[0x5f] = 0;
  piVar6[0x61] = 0;
  piVar6[0x62] = 0;
  piVar6[0x65] = 0;
  piVar6[0x67] = 0;
  piVar6[0x68] = 0;
  piVar6[0x6b] = 0;
  piVar6[0x6d] = 0;
  piVar6[0x6e] = 0;
  piVar6[0x71] = 0;
  piVar6[0x73] = 0;
  bVar1 = *(byte *)(piVar6 + 0x79);
  piVar6[0x75] = (int)(piVar6 + 0x73);
  piVar6[0x76] = (int)(piVar6 + 0x73);
  piVar6[0x74] = 0;
  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf3 | 8;
  piVar6[0x77] = 0;
  piVar6[0x78] = 0;
  piVar6[0x7a] = 0;
  piVar6[0x7b] = 0;
  piVar6[0x7c] = 0;
  piVar6[0x7d] = 0;
  piVar6[0x7e] = 0;
  piVar6[0x7f] = 0;
  piVar6[0x80] = 0;
  piVar6[0x81] = 0;
  piVar6[0x82] = 0;
  piVar6[0x83] = 0;
  piVar6[0x84] = 0;
  piVar6[0x85] = 0;
  piVar6[0x86] = 0;
  piVar6[0x87] = 0;
  piVar6[0x88] = 0;
  piVar6[0x89] = 0;
  piVar6[0x8a] = -1;
  piVar6[0x8b] = 0;
  piVar6[0x8c] = 0;
  piVar6[0x8d] = 0;
  piVar6[0x8e] = 0;
  piVar6[0x8f] = 0;
  piVar6[0x90] = 0;
  piVar6[0x91] = 0;
  iVar3 = *param_6;
  bVar4 = (byte)((uint)*(undefined4 *)(iVar3 + 0x24) >> 0x19) & 1;
  *(byte *)(piVar6 + 0x79) = bVar1 & 0xf2 | 8 | bVar4;
  *(byte *)(piVar6 + 0x79) =
       (char)((*(uint *)(iVar3 + 0x24) >> 0x18 & 0x20) >> 5) * '\x02' | bVar1 & 0xf0 | 8 | bVar4;
  FUN_00294830(piVar6);
  return piVar6;
}

