
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */
/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */
/* DWARF original prototype: void do_write(Mips_output_section_reginfo<64,_false> * this,
   Output_file * of) */

void __thiscall
anon_unknown.dwarf_29466b::Mips_output_section_reginfo<64,_false>::do_write
          (Mips_output_section_reginfo<64,_false> *this,Output_file *of)

{
  int iVar1;
  int *piVar2;
  uint uVar3;
  Target_mips<64,_false> *this_00;
  pointer ppVar4;
  Output_file *this_1;
  Sized_symbol<64> *pSVar5;
  int iVar6;
  uint uVar7;
  undefined *puVar8;
  code *pcVar9;
  code *pcVar10;
  undefined4 in_stack_fffffff4;
  
  iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.field_0x20;
  if (iVar1 << 2 < 0) {
    this_1 = *(Output_file **)&(this->super_Output_section_data).super_Output_data.offset_;
    iVar6 = (int)(this->super_Output_section_data).super_Output_data.offset_;
    if (iVar1 << 1 < 0) {
      uVar3 = (uint)(this->super_Output_section_data).super_Output_data.data_size_;
      if (-1 < (int)this_1) {
        uVar7 = uVar3 + iVar6;
        iVar1 = (int)&this_1->name_ + (uint)(uVar7 < uVar3);
        this_1 = (Output_file *)(uint)(*(int *)&of->file_size_ < iVar1);
        if ((this_1 == (Output_file *)0x0) &&
           ((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)))) {
          uVar7 = *(uint *)&this->gprmask_;
          uVar3 = (uint)this->gprmask_;
          piVar2 = (int *)(of->base_ + iVar6);
          pSVar5 = this->target_->gp_;
          piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;
          *piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          uVar7 = *(uint *)&this->cprmask1_;
          uVar3 = (uint)this->cprmask1_;
          piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;
          piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          uVar7 = *(uint *)&this->cprmask2_;
          uVar3 = (uint)this->cprmask2_;
          piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;
          piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          uVar7 = *(uint *)&this->cprmask3_;
          uVar3 = (uint)this->cprmask3_;
          piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;
          piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          uVar3 = (uint)this->cprmask4_;
          uVar7 = *(uint *)&this->cprmask4_;
          piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;
          if (pSVar5 == (Sized_symbol<64> *)0x0) {
            piVar2[5] = 0;
            piVar2[6] = 0;
            return;
          }
          uVar3 = *(uint *)&pSVar5->value_;
          uVar7 = (uint)pSVar5->value_;
          piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;
          return;
        }
      }
      gold::Output_file::get_output_view
                ((Output_file *)this,CONCAT44(0x4c9240,in_stack_fffffff4),(size_t)of,this_1);
    }
    (*(code *)PTR_do_gold_unreachable_004c1a30)
              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350
              );
  }
  puVar8 = PTR_do_gold_unreachable_004c1a30;
  (*(code *)PTR_do_gold_unreachable_004c1a30)
            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);
  pcVar9 = *(code **)(puVar8 + 0x3ea3cc);
  iVar1 = *(int *)(puVar8 + 0x3e9c18) + 0x3574;
  (*pcVar9)(iVar1,0xc5,*(int *)(puVar8 + 0x3ea3ec) + -0x3478);
  if (*(int *)(iVar1 + 0x14) == 0) {
    return;
  }
  if (*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0) {
    return;
  }
  pcVar10 = *(code **)(pcVar9 + 0x3ea398);
  (*pcVar10)(*(int *)(pcVar9 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea3b8) + -0x3350);
  pcVar9 = *(code **)(pcVar10 + 0x3ea338);
  iVar1 = *(int *)(pcVar10 + 0x3e9b84) + 0x3574;
  (*pcVar9)(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea358) + -0x3350);
  if (*(int *)(iVar1 + 0x14) == 0) {
    return;
  }
  if (*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0) {
    return;
  }
  pcVar10 = *(code **)(pcVar9 + 0x3ea304);
  iVar1 = *(int *)(pcVar9 + 0x3e9b50) + 0x3574;
  (*pcVar10)(iVar1,0xcf,*(int *)(pcVar9 + 0x3ea324) + -0x3350);
  if (*(int *)(iVar1 + 0x14) == 0) {
    return;
  }
  if (-1 < *(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1) {
    pcVar9 = *(code **)(pcVar10 + 0x3ea2a4);
    iVar1 = *(int *)(pcVar10 + 0x3e9af0) + 0x3574;
    (*pcVar9)(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea2c4) + -0x3350);
    if (*(int *)(iVar1 + 0x14) == 0) {
      return;
    }
    if (*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0) {
      return;
    }
    pcVar10 = *(code **)(pcVar9 + 0x3ea244);
    (*pcVar10)(*(int *)(pcVar9 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea264) + -0x3350);
    this_00 = (Target_mips<64,_false> *)(*(int *)(pcVar10 + 0x3e9a30) + 0x3574);
    (**(code **)(pcVar10 + 0x3ea1e4))(this_00,0x218,*(int *)(pcVar10 + 0x3ea204) + -0x39fc);
    ppVar4 = (this_00->mips_mach_extensions_).
             super__Vector_base<std::pair<unsigned_int,_unsigned_int>,_std::allocator<std::pair<unsigned_int,_unsigned_int>_>_>
             ._M_impl._M_start;
    if (*(char *)&ppVar4[1].second == '\0') {
      Target_mips<64,_false>::is_output_micromips(this_00);
      if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {
        this_00->got_ =
             (Mips_output_data_got<64,_false> *)
             ((int)&((this_00->dyn_relocs_).
                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>
                     ._M_impl._M_finish)->sym_ +
             (int)&((this_00->dyn_relocs_).
                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>
                    ._M_impl._M_end_of_storage)->sym_ +
             (int)(this_00->dyn_relocs_).
                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>
                  ._M_impl._M_start);
        *(undefined4 *)&this_00->field_0x10 = 0;
        *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;
        return;
      }
                    /* WARNING: Subroutine does not return */
      Mips_output_data_mips_stubs<64,_false>::set_final_data_size
                ((Mips_output_data_mips_stubs<64,_false> *)this_00);
    }
    iVar1 = 0x10;
    if ((int)(ppVar4[1].first << 6) < 0) {
      if (*(char *)((int)&ppVar4[0x10].first + 2) != '\0') {
        iVar1 = 0x14;
      }
    }
    else {
      iVar1 = 0x14;
    }
    if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {
      this_00->got_ =
           (Mips_output_data_got<64,_false> *)
           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_);
      *(undefined4 *)&this_00->field_0x10 = 0;
      *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;
      return;
    }
                    /* WARNING: Subroutine does not return */
    Mips_output_data_mips_stubs<64,_false>::set_final_data_size
              ((Mips_output_data_mips_stubs<64,_false> *)this_00);
  }
  return;
}



int * FUN_000d74b0(int param_1,int param_2)

{
  int *piVar1;
  int iVar2;
  uint uVar3;
  uint uVar4;
  undefined *puVar5;
  code *pcVar6;
  code *pcVar7;
  
  if (*(int *)(param_1 + 0x20) << 2 < 0) {
    if (*(int *)(param_1 + 0x20) << 1 < 0) {
      if (-1 < *(int *)(param_1 + 0x18)) {
        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);
        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);
        if ((iVar2 <= *(int *)(param_2 + 8)) &&
           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {
          uVar3 = *(uint *)(param_1 + 0x38);
          uVar4 = *(uint *)(param_1 + 0x3c);
          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));
          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);
          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          uVar3 = *(uint *)(param_1 + 0x40);
          uVar4 = *(uint *)(param_1 + 0x44);
          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          uVar3 = *(uint *)(param_1 + 0x48);
          uVar4 = *(uint *)(param_1 + 0x4c);
          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          uVar3 = *(uint *)(param_1 + 0x50);
          uVar4 = *(uint *)(param_1 + 0x54);
          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          uVar4 = *(uint *)(param_1 + 0x5c);
          uVar3 = *(uint *)(param_1 + 0x58);
          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          if (iVar2 == 0) {
            piVar1[5] = 0;
            piVar1[6] = 0;
            return piVar1;
          }
          uVar4 = *(uint *)(iVar2 + 0x30);
          uVar3 = *(uint *)(iVar2 + 0x34);
          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          return piVar1;
        }
      }
      FUN_000d5cdc();
    }
    (*(code *)PTR_do_gold_unreachable_004c1a30)
              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350
              );
  }
  puVar5 = PTR_do_gold_unreachable_004c1a30;
  (*(code *)PTR_do_gold_unreachable_004c1a30)
            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);
  pcVar6 = *(code **)(puVar5 + 0x3ea3cc);
  iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;
  (*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);
  iVar2 = *(int *)(iVar2 + 0x14);
  if (iVar2 == 0) {
    return (int *)0x0;
  }
  if (*(int *)(iVar2 + 0x20) << 1 < 0) {
    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);
  }
  pcVar7 = *(code **)(pcVar6 + 0x3ea398);
  (*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);
  pcVar6 = *(code **)(pcVar7 + 0x3ea338);
  iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;
  (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);
  iVar2 = *(int *)(iVar2 + 0x14);
  if (iVar2 == 0) {
    return (int *)0x0;
  }
  if (*(int *)(iVar2 + 0x20) << 1 < 0) {
    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);
  }
  pcVar7 = *(code **)(pcVar6 + 0x3ea304);
  iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;
  (*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);
  iVar2 = *(int *)(iVar2 + 0x14);
  if (iVar2 == 0) {
    return (int *)0x0;
  }
  if (-1 < *(int *)(iVar2 + 0x20) << 1) {
    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);
    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;
    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);
    iVar2 = *(int *)(iVar2 + 0x14);
    if (iVar2 == 0) {
      return (int *)0x0;
    }
    if (-1 < *(int *)(iVar2 + 0x20) << 1) {
      pcVar7 = *(code **)(pcVar6 + 0x3ea244);
      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);
      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))
                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,
                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);
      return piVar1;
    }
    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);
  }
  return (int *)(*(uint *)(iVar2 + 0x14) >> 2);
}


lui gp,0x3f
addiu gp,gp,0x1d90
addu gp,gp,t9
lw v0,0x20(a0)
addiu sp,sp,-0x20
ext v1,v0,0x1d,0x1
sw gp,0x10(sp)
sw ra,0x1c(sp)
beq v1,zero,0x000d7648
_ext v0,v0,0x1e,0x1
lw a2,0x18(a0)
beq v0,zero,0x000d762c
_lw a3,0x1c(a0)
bltz a2,0x000d761c
_lw v1,0x14(a0)
addu t0,v1,a3
lw v0,0x8(a1)
sltu v1,t0,v1
addu v1,v1,a2
slt a2,v0,v1
bne a2,zero,0x000d7620
_lw t9,-0x77f4(gp)
beq v0,v1,0x000d760c
_nop
lw a2,0x38(a0)
lw v1,0x3c(a0)
lw v0,0x10(a1)
wsbh a1,a2
lw a2,0x30(a0)
wsbh v1,v1
addu v0,v0,a3
rotr a1,a1,0x10
rotr v1,v1,0x10
lw a2,0x18(a2)
sw a1,0x4(v0)
sw v1,0x0(v0)
lw a1,0x40(a0)
lw v1,0x44(a0)
wsbh a1,a1
wsbh v1,v1
rotr a1,a1,0x10
rotr v1,v1,0x10
sw a1,0x8(v0)
sw v1,0x4(v0)
lw a1,0x48(a0)
lw v1,0x4c(a0)
wsbh a1,a1
wsbh v1,v1
rotr a1,a1,0x10
rotr v1,v1,0x10
sw a1,0xc(v0)
sw v1,0x8(v0)
lw a1,0x50(a0)
lw v1,0x54(a0)
wsbh a1,a1
wsbh v1,v1
rotr a1,a1,0x10
rotr v1,v1,0x10
sw a1,0x10(v0)
sw v1,0xc(v0)
lw v1,0x5c(a0)
lw a1,0x58(a0)
wsbh v1,v1
wsbh a0,a1
rotr v1,v1,0x10
rotr a0,a0,0x10
sw v1,0x10(v0)
beq a2,zero,0x000d75f0
_sw a0,0x14(v0)
lw v1,0x30(a2)
lw a0,0x34(a2)
lw ra,0x1c(sp)
wsbh v1,v1
wsbh a0,a0
rotr v1,v1,0x10
rotr a0,a0,0x10
sw v1,0x18(v0)
sw a0,0x14(v0)
jr ra
_addiu sp,sp,0x20
lw ra,0x1c(sp)
or a0,zero,zero
or v1,zero,zero
sw a0,0x14(v0)
sw v1,0x18(v0)
jr ra
_addiu sp,sp,0x20
lw v0,0xc(a1)
sltu t0,v0,t0
beq t0,zero,0x000d7510
_nop
lw t9,-0x77f4(gp)
addiu t9,t9,0x5cdc
bal 0x000d5cdc
_nop
lw a2,-0x77f0(gp)
li a1,0xcf
lw a0,-0x7fc4(gp)
lw t9,-0x7810(gp)
addiu a2,a2,-0x3350
jalr t9
_addiu a0,a0,0x3574
lw a2,-0x77f0(gp)
li a1,0xe3
lw a0,-0x7fc4(gp)
lw t9,-0x7810(gp)
addiu a2,a2,-0x3a3c
jalr t9
_addiu a0,a0,0x3574
(translation_unit "int * FUN_000d74b0(int param_1,int param_2)\n\n{\n  int *piVar1;\n  int iVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined *puVar5;\n  code *pcVar6;\n  code *pcVar7;\n  \n  if (*(int *)(param_1 + 0x20) << 2 < 0) {\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }\n  puVar5 = PTR_do_gold_unreachable_004c1a30;\n  (*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);\n  pcVar6 = *(code **)(puVar5 + 0x3ea3cc);\n  iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;\n  (*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea398);\n  (*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);\n  pcVar6 = *(code **)(pcVar7 + 0x3ea338);\n  iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;\n  (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea304);\n  iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;\n  (*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }\n  return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n}\n\n" (function_definition "int * FUN_000d74b0(int param_1,int param_2)\n\n{\n  int *piVar1;\n  int iVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined *puVar5;\n  code *pcVar6;\n  code *pcVar7;\n  \n  if (*(int *)(param_1 + 0x20) << 2 < 0) {\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }\n  puVar5 = PTR_do_gold_unreachable_004c1a30;\n  (*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);\n  pcVar6 = *(code **)(puVar5 + 0x3ea3cc);\n  iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;\n  (*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea398);\n  (*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);\n  pcVar6 = *(code **)(pcVar7 + 0x3ea338);\n  iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;\n  (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea304);\n  iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;\n  (*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }\n  return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n}" primitive_type (pointer_declarator "* FUN_000d74b0(int param_1,int param_2)" * (function_declarator "FUN_000d74b0(int param_1,int param_2)" identifier (parameter_list "(int param_1,int param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "int param_2" primitive_type identifier) )))) (compound_statement "{\n  int *piVar1;\n  int iVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined *puVar5;\n  code *pcVar6;\n  code *pcVar7;\n  \n  if (*(int *)(param_1 + 0x20) << 2 < 0) {\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }\n  puVar5 = PTR_do_gold_unreachable_004c1a30;\n  (*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);\n  pcVar6 = *(code **)(puVar5 + 0x3ea3cc);\n  iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;\n  (*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea398);\n  (*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);\n  pcVar6 = *(code **)(pcVar7 + 0x3ea338);\n  iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;\n  (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea304);\n  iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;\n  (*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }\n  return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "code *pcVar6;" type_identifier (pointer_declarator "*pcVar6" * identifier) ;) (declaration "code *pcVar7;" type_identifier (pointer_declarator "*pcVar7" * identifier) ;) (if_statement "if (*(int *)(param_1 + 0x20) << 2 < 0) {\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x20) << 2 < 0)" ( (binary_expression "*(int *)(param_1 + 0x20) << 2 < 0" (binary_expression "*(int *)(param_1 + 0x20) << 2" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }" { (if_statement "if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x20) << 1 < 0)" ( (binary_expression "*(int *)(param_1 + 0x20) << 1 < 0" (binary_expression "*(int *)(param_1 + 0x20) << 1" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }" { (if_statement "if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }" if (parenthesized_expression "(-1 < *(int *)(param_1 + 0x18))" ( (binary_expression "-1 < *(int *)(param_1 + 0x18)" number_literal < (pointer_expression "*(int *)(param_1 + 0x18)" * (cast_expression "(int *)(param_1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }" { (expression_statement "uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c)" identifier = (binary_expression "*(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c)" (pointer_expression "*(uint *)(param_1 + 0x14)" * (cast_expression "(uint *)(param_1 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) )))))) ;) (expression_statement "iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);" (assignment_expression "iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18)" identifier = (binary_expression "(uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18)" (call_expression "(uint)(uVar4 < *(uint *)(param_1 + 0x14))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < *(uint *)(param_1 + 0x14))" ( (binary_expression "uVar4 < *(uint *)(param_1 + 0x14)" identifier < (pointer_expression "*(uint *)(param_1 + 0x14)" * (cast_expression "(uint *)(param_1 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) ))))) ))) + (pointer_expression "*(int *)(param_1 + 0x18)" * (cast_expression "(int *)(param_1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) )))))) ;) (if_statement "if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }" if (parenthesized_expression "((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc)))))" ( (binary_expression "(iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))" (parenthesized_expression "(iVar2 <= *(int *)(param_2 + 8))" ( (binary_expression "iVar2 <= *(int *)(param_2 + 8)" identifier <= (pointer_expression "*(int *)(param_2 + 8)" * (cast_expression "(int *)(param_2 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) ))))) )) && (parenthesized_expression "((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))" ( (parenthesized_expression "(*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc)))" ( (binary_expression "*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))" (binary_expression "*(int *)(param_2 + 8) != iVar2" (pointer_expression "*(int *)(param_2 + 8)" * (cast_expression "(int *)(param_2 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) != identifier) || (parenthesized_expression "(uVar4 <= *(uint *)(param_2 + 0xc))" ( (binary_expression "uVar4 <= *(uint *)(param_2 + 0xc)" identifier <= (pointer_expression "*(uint *)(param_2 + 0xc)" * (cast_expression "(uint *)(param_2 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) ))))) ))) )) ))) )) (compound_statement "{\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }" { (expression_statement "uVar3 = *(uint *)(param_1 + 0x38);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x38)" identifier = (pointer_expression "*(uint *)(param_1 + 0x38)" * (cast_expression "(uint *)(param_1 + 0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x3c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x3c)" identifier = (pointer_expression "*(uint *)(param_1 + 0x3c)" * (cast_expression "(uint *)(param_1 + 0x3c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) ))))) ;) (expression_statement "piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));" (assignment_expression "piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c))" identifier = (cast_expression "(int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c))" ( (binary_expression "*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c)" (pointer_expression "*(int *)(param_2 + 0x10)" * (cast_expression "(int *)(param_2 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) )))) ;) (expression_statement "iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);" (assignment_expression "iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18)" identifier = (pointer_expression "*(int *)(*(int *)(param_1 + 0x30) + 0x18)" * (cast_expression "(int *)(*(int *)(param_1 + 0x30) + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x30) + 0x18)" ( (binary_expression "*(int *)(param_1 + 0x30) + 0x18" (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[1]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "*piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "*piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (pointer_expression "*piVar1" * identifier) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar3 = *(uint *)(param_1 + 0x40);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x40)" identifier = (pointer_expression "*(uint *)(param_1 + 0x40)" * (cast_expression "(uint *)(param_1 + 0x40)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x44);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x44)" identifier = (pointer_expression "*(uint *)(param_1 + 0x44)" * (cast_expression "(uint *)(param_1 + 0x44)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) ))))) ;) (expression_statement "piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[2]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[1]" identifier [ number_literal ]) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar3 = *(uint *)(param_1 + 0x48);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x48)" identifier = (pointer_expression "*(uint *)(param_1 + 0x48)" * (cast_expression "(uint *)(param_1 + 0x48)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x4c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x4c)" identifier = (pointer_expression "*(uint *)(param_1 + 0x4c)" * (cast_expression "(uint *)(param_1 + 0x4c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x4c)" ( (binary_expression "param_1 + 0x4c" identifier + number_literal) ))))) ;) (expression_statement "piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[3]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[2]" identifier [ number_literal ]) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar3 = *(uint *)(param_1 + 0x50);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x50)" identifier = (pointer_expression "*(uint *)(param_1 + 0x50)" * (cast_expression "(uint *)(param_1 + 0x50)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x54);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x54)" identifier = (pointer_expression "*(uint *)(param_1 + 0x54)" * (cast_expression "(uint *)(param_1 + 0x54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x54)" ( (binary_expression "param_1 + 0x54" identifier + number_literal) ))))) ;) (expression_statement "piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[4]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[3]" identifier [ number_literal ]) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x5c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x5c)" identifier = (pointer_expression "*(uint *)(param_1 + 0x5c)" * (cast_expression "(uint *)(param_1 + 0x5c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5c)" ( (binary_expression "param_1 + 0x5c" identifier + number_literal) ))))) ;) (expression_statement "uVar3 = *(uint *)(param_1 + 0x58);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x58)" identifier = (pointer_expression "*(uint *)(param_1 + 0x58)" * (cast_expression "(uint *)(param_1 + 0x58)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x58)" ( (binary_expression "param_1 + 0x58" identifier + number_literal) ))))) ;) (expression_statement "piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[4]" identifier [ number_literal ]) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[5]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (if_statement "if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }" { (expression_statement "piVar1[5] = 0;" (assignment_expression "piVar1[5] = 0" (subscript_expression "piVar1[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar1[6] = 0;" (assignment_expression "piVar1[6] = 0" (subscript_expression "piVar1[6]" identifier [ number_literal ]) = number_literal) ;) (return_statement "return piVar1;" return identifier ;) })) (expression_statement "uVar4 = *(uint *)(iVar2 + 0x30);" (assignment_expression "uVar4 = *(uint *)(iVar2 + 0x30)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x30)" * (cast_expression "(uint *)(iVar2 + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x30)" ( (binary_expression "iVar2 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "uVar3 = *(uint *)(iVar2 + 0x34);" (assignment_expression "uVar3 = *(uint *)(iVar2 + 0x34)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x34)" * (cast_expression "(uint *)(iVar2 + 0x34)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x34)" ( (binary_expression "iVar2 + 0x34" identifier + number_literal) ))))) ;) (expression_statement "piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[6]" identifier [ number_literal ]) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[5]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (return_statement "return piVar1;" return identifier ;) })) })) (expression_statement "FUN_000d5cdc();" (call_expression "FUN_000d5cdc()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "(*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );" (call_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              )" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004c1a30" * (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              )" ( (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574" identifier + number_literal) , number_literal , (binary_expression "PTR_s__s_004c1a50 + -0x3350" identifier + number_literal) ))) ;) })) (expression_statement "puVar5 = PTR_do_gold_unreachable_004c1a30;" (assignment_expression "puVar5 = PTR_do_gold_unreachable_004c1a30" identifier = identifier) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);" (call_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004c1a30" * (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c)" ( (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574" identifier + number_literal) , number_literal , (binary_expression "PTR_s__s_004c1a50 + -0x3a3c" identifier + number_literal) ))) ;) (expression_statement "pcVar6 = *(code **)(puVar5 + 0x3ea3cc);" (assignment_expression "pcVar6 = *(code **)(puVar5 + 0x3ea3cc)" identifier = (pointer_expression "*(code **)(puVar5 + 0x3ea3cc)" * (cast_expression "(code **)(puVar5 + 0x3ea3cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x3ea3cc)" ( (binary_expression "puVar5 + 0x3ea3cc" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574" identifier = (binary_expression "*(int *)(puVar5 + 0x3e9c18) + 0x3574" (pointer_expression "*(int *)(puVar5 + 0x3e9c18)" * (cast_expression "(int *)(puVar5 + 0x3e9c18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x3e9c18)" ( (binary_expression "puVar5 + 0x3e9c18" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);" (call_expression "(*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478)" (parenthesized_expression "(*pcVar6)" ( (pointer_expression "*pcVar6" * identifier) )) (argument_list "(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478)" ( identifier , number_literal , (binary_expression "*(int *)(puVar5 + 0x3ea3ec) + -0x3478" (pointer_expression "*(int *)(puVar5 + 0x3ea3ec)" * (cast_expression "(int *)(puVar5 + 0x3ea3ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x3ea3ec)" ( (binary_expression "puVar5 + 0x3ea3ec" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" identifier = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == 0) {\n    return (int *)0x0;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    return (int *)0x0;\n  }" { (return_statement "return (int *)0x0;" return (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (if_statement "if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" if (parenthesized_expression "(*(int *)(iVar2 + 0x20) << 1 < 0)" ( (binary_expression "*(int *)(iVar2 + 0x20) << 1 < 0" (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" * (cast_expression "(int *)(iVar2 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" { (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 3);" return (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 3)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 3)" ( (binary_expression "*(uint *)(iVar2 + 0x14) >> 3" (pointer_expression "*(uint *)(iVar2 + 0x14)" * (cast_expression "(uint *)(iVar2 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) >> number_literal) ))) ;) })) (expression_statement "pcVar7 = *(code **)(pcVar6 + 0x3ea398);" (assignment_expression "pcVar7 = *(code **)(pcVar6 + 0x3ea398)" identifier = (pointer_expression "*(code **)(pcVar6 + 0x3ea398)" * (cast_expression "(code **)(pcVar6 + 0x3ea398)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar6 + 0x3ea398)" ( (binary_expression "pcVar6 + 0x3ea398" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);" (call_expression "(*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350)" (parenthesized_expression "(*pcVar7)" ( (pointer_expression "*pcVar7" * identifier) )) (argument_list "(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350)" ( (binary_expression "*(int *)(pcVar6 + 0x3e9be4) + 0x3574" (pointer_expression "*(int *)(pcVar6 + 0x3e9be4)" * (cast_expression "(int *)(pcVar6 + 0x3e9be4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3e9be4)" ( (binary_expression "pcVar6 + 0x3e9be4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar6 + 0x3ea3b8) + -0x3350" (pointer_expression "*(int *)(pcVar6 + 0x3ea3b8)" * (cast_expression "(int *)(pcVar6 + 0x3ea3b8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3ea3b8)" ( (binary_expression "pcVar6 + 0x3ea3b8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar6 = *(code **)(pcVar7 + 0x3ea338);" (assignment_expression "pcVar6 = *(code **)(pcVar7 + 0x3ea338)" identifier = (pointer_expression "*(code **)(pcVar7 + 0x3ea338)" * (cast_expression "(code **)(pcVar7 + 0x3ea338)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar7 + 0x3ea338)" ( (binary_expression "pcVar7 + 0x3ea338" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;" (assignment_expression "iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574" identifier = (binary_expression "*(int *)(pcVar7 + 0x3e9b84) + 0x3574" (pointer_expression "*(int *)(pcVar7 + 0x3e9b84)" * (cast_expression "(int *)(pcVar7 + 0x3e9b84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3e9b84)" ( (binary_expression "pcVar7 + 0x3e9b84" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);" (call_expression "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350)" (parenthesized_expression "(*pcVar6)" ( (pointer_expression "*pcVar6" * identifier) )) (argument_list "(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar7 + 0x3ea358) + -0x3350" (pointer_expression "*(int *)(pcVar7 + 0x3ea358)" * (cast_expression "(int *)(pcVar7 + 0x3ea358)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3ea358)" ( (binary_expression "pcVar7 + 0x3ea358" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" identifier = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == 0) {\n    return (int *)0x0;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    return (int *)0x0;\n  }" { (return_statement "return (int *)0x0;" return (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (if_statement "if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" if (parenthesized_expression "(*(int *)(iVar2 + 0x20) << 1 < 0)" ( (binary_expression "*(int *)(iVar2 + 0x20) << 1 < 0" (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" * (cast_expression "(int *)(iVar2 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" { (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 3);" return (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 3)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 3)" ( (binary_expression "*(uint *)(iVar2 + 0x14) >> 3" (pointer_expression "*(uint *)(iVar2 + 0x14)" * (cast_expression "(uint *)(iVar2 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) >> number_literal) ))) ;) })) (expression_statement "pcVar7 = *(code **)(pcVar6 + 0x3ea304);" (assignment_expression "pcVar7 = *(code **)(pcVar6 + 0x3ea304)" identifier = (pointer_expression "*(code **)(pcVar6 + 0x3ea304)" * (cast_expression "(code **)(pcVar6 + 0x3ea304)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar6 + 0x3ea304)" ( (binary_expression "pcVar6 + 0x3ea304" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;" (assignment_expression "iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574" identifier = (binary_expression "*(int *)(pcVar6 + 0x3e9b50) + 0x3574" (pointer_expression "*(int *)(pcVar6 + 0x3e9b50)" * (cast_expression "(int *)(pcVar6 + 0x3e9b50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3e9b50)" ( (binary_expression "pcVar6 + 0x3e9b50" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);" (call_expression "(*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350)" (parenthesized_expression "(*pcVar7)" ( (pointer_expression "*pcVar7" * identifier) )) (argument_list "(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar6 + 0x3ea324) + -0x3350" (pointer_expression "*(int *)(pcVar6 + 0x3ea324)" * (cast_expression "(int *)(pcVar6 + 0x3ea324)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3ea324)" ( (binary_expression "pcVar6 + 0x3ea324" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" identifier = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == 0) {\n    return (int *)0x0;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    return (int *)0x0;\n  }" { (return_statement "return (int *)0x0;" return (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (if_statement "if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }" if (parenthesized_expression "(-1 < *(int *)(iVar2 + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(iVar2 + 0x20) << 1" number_literal < (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" * (cast_expression "(int *)(iVar2 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) )))) << number_literal)) )) (compound_statement "{\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }" { (expression_statement "pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);" (assignment_expression "pcVar6 = *(code **)(pcVar7 + 0x3ea2a4)" identifier = (pointer_expression "*(code **)(pcVar7 + 0x3ea2a4)" * (cast_expression "(code **)(pcVar7 + 0x3ea2a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar7 + 0x3ea2a4)" ( (binary_expression "pcVar7 + 0x3ea2a4" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;" (assignment_expression "iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574" identifier = (binary_expression "*(int *)(pcVar7 + 0x3e9af0) + 0x3574" (pointer_expression "*(int *)(pcVar7 + 0x3e9af0)" * (cast_expression "(int *)(pcVar7 + 0x3e9af0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3e9af0)" ( (binary_expression "pcVar7 + 0x3e9af0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);" (call_expression "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350)" (parenthesized_expression "(*pcVar6)" ( (pointer_expression "*pcVar6" * identifier) )) (argument_list "(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar7 + 0x3ea2c4) + -0x3350" (pointer_expression "*(int *)(pcVar7 + 0x3ea2c4)" * (cast_expression "(int *)(pcVar7 + 0x3ea2c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3ea2c4)" ( (binary_expression "pcVar7 + 0x3ea2c4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" identifier = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == 0) {\n      return (int *)0x0;\n    }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n      return (int *)0x0;\n    }" { (return_statement "return (int *)0x0;" return (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (if_statement "if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }" if (parenthesized_expression "(-1 < *(int *)(iVar2 + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(iVar2 + 0x20) << 1" number_literal < (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" * (cast_expression "(int *)(iVar2 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) )))) << number_literal)) )) (compound_statement "{\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }" { (expression_statement "pcVar7 = *(code **)(pcVar6 + 0x3ea244);" (assignment_expression "pcVar7 = *(code **)(pcVar6 + 0x3ea244)" identifier = (pointer_expression "*(code **)(pcVar6 + 0x3ea244)" * (cast_expression "(code **)(pcVar6 + 0x3ea244)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar6 + 0x3ea244)" ( (binary_expression "pcVar6 + 0x3ea244" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);" (call_expression "(*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350)" (parenthesized_expression "(*pcVar7)" ( (pointer_expression "*pcVar7" * identifier) )) (argument_list "(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350)" ( (binary_expression "*(int *)(pcVar6 + 0x3e9a90) + 0x3574" (pointer_expression "*(int *)(pcVar6 + 0x3e9a90)" * (cast_expression "(int *)(pcVar6 + 0x3e9a90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3e9a90)" ( (binary_expression "pcVar6 + 0x3e9a90" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar6 + 0x3ea264) + -0x3350" (pointer_expression "*(int *)(pcVar6 + 0x3ea264)" * (cast_expression "(int *)(pcVar6 + 0x3ea264)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3ea264)" ( (binary_expression "pcVar6 + 0x3ea264" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);" (assignment_expression "piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" identifier = (cast_expression "(int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" (parenthesized_expression "(**(code **)(pcVar7 + 0x3ea1e4))" ( (pointer_expression "**(code **)(pcVar7 + 0x3ea1e4)" * (pointer_expression "*(code **)(pcVar7 + 0x3ea1e4)" * (cast_expression "(code **)(pcVar7 + 0x3ea1e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar7 + 0x3ea1e4)" ( (binary_expression "pcVar7 + 0x3ea1e4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" ( (binary_expression "*(int *)(pcVar7 + 0x3e9a30) + 0x3574" (pointer_expression "*(int *)(pcVar7 + 0x3e9a30)" * (cast_expression "(int *)(pcVar7 + 0x3e9a30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3e9a30)" ( (binary_expression "pcVar7 + 0x3e9a30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar7 + 0x3ea204) + -0x39fc" (pointer_expression "*(int *)(pcVar7 + 0x3ea204)" * (cast_expression "(int *)(pcVar7 + 0x3ea204)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3ea204)" ( (binary_expression "pcVar7 + 0x3ea204" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return piVar1;" return identifier ;) })) (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 2);" return (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 2)" ( (binary_expression "*(uint *)(iVar2 + 0x14) >> 2" (pointer_expression "*(uint *)(iVar2 + 0x14)" * (cast_expression "(uint *)(iVar2 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) >> number_literal) ))) ;) })) (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 2);" return (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 2)" ( (binary_expression "*(uint *)(iVar2 + 0x14) >> 2" (pointer_expression "*(uint *)(iVar2 + 0x14)" * (cast_expression "(uint *)(iVar2 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) >> number_literal) ))) ;) })))
(translation_unit "/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */\n/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */\n/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */\n/* WARNING: Enum "DT": Some values do not have unique names */\n/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */\n/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */\n/* DWARF original prototype: void do_write(Mips_output_section_reginfo<64,_false> * this,\n   Output_file * of) */\n\nvoid __thiscall\nanon_unknown.dwarf_29466b::Mips_output_section_reginfo<64,_false>::do_write\n          (Mips_output_section_reginfo<64,_false> *this,Output_file *of)\n\n{\n  int iVar1;\n  int *piVar2;\n  uint uVar3;\n  Target_mips<64,_false> *this_00;\n  pointer ppVar4;\n  Output_file *this_1;\n  Sized_symbol<64> *pSVar5;\n  int iVar6;\n  uint uVar7;\n  undefined *puVar8;\n  code *pcVar9;\n  code *pcVar10;\n  undefined4 in_stack_fffffff4;\n  \n  iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.field_0x20;\n  if (iVar1 << 2 < 0) {\n    this_1 = *(Output_file **)&(this->super_Output_section_data).super_Output_data.offset_;\n    iVar6 = (int)(this->super_Output_section_data).super_Output_data.offset_;\n    if (iVar1 << 1 < 0) {\n      uVar3 = (uint)(this->super_Output_section_data).super_Output_data.data_size_;\n      if (-1 < (int)this_1) {\n        uVar7 = uVar3 + iVar6;\n        iVar1 = (int)&this_1->name_ + (uint)(uVar7 < uVar3);\n        this_1 = (Output_file *)(uint)(*(int *)&of->file_size_ < iVar1);\n        if ((this_1 == (Output_file *)0x0) &&\n           ((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)))) {\n          uVar7 = *(uint *)&this->gprmask_;\n          uVar3 = (uint)this->gprmask_;\n          piVar2 = (int *)(of->base_ + iVar6);\n          pSVar5 = this->target_->gp_;\n          piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          *piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask1_;\n          uVar3 = (uint)this->cprmask1_;\n          piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask2_;\n          uVar3 = (uint)this->cprmask2_;\n          piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask3_;\n          uVar3 = (uint)this->cprmask3_;\n          piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar3 = (uint)this->cprmask4_;\n          uVar7 = *(uint *)&this->cprmask4_;\n          piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          if (pSVar5 == (Sized_symbol<64> *)0x0) {\n            piVar2[5] = 0;\n            piVar2[6] = 0;\n            return;\n          }\n          uVar3 = *(uint *)&pSVar5->value_;\n          uVar7 = (uint)pSVar5->value_;\n          piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          return;\n        }\n      }\n      gold::Output_file::get_output_view\n                ((Output_file *)this,CONCAT44(0x4c9240,in_stack_fffffff4),(size_t)of,this_1);\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }\n  puVar8 = PTR_do_gold_unreachable_004c1a30;\n  (*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);\n  pcVar9 = *(code **)(puVar8 + 0x3ea3cc);\n  iVar1 = *(int *)(puVar8 + 0x3e9c18) + 0x3574;\n  (*pcVar9)(iVar1,0xc5,*(int *)(puVar8 + 0x3ea3ec) + -0x3478);\n  if (*(int *)(iVar1 + 0x14) == 0) {\n    return;\n  }\n  if (*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0) {\n    return;\n  }\n  pcVar10 = *(code **)(pcVar9 + 0x3ea398);\n  (*pcVar10)(*(int *)(pcVar9 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea3b8) + -0x3350);\n  pcVar9 = *(code **)(pcVar10 + 0x3ea338);\n  iVar1 = *(int *)(pcVar10 + 0x3e9b84) + 0x3574;\n  (*pcVar9)(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea358) + -0x3350);\n  if (*(int *)(iVar1 + 0x14) == 0) {\n    return;\n  }\n  if (*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0) {\n    return;\n  }\n  pcVar10 = *(code **)(pcVar9 + 0x3ea304);\n  iVar1 = *(int *)(pcVar9 + 0x3e9b50) + 0x3574;\n  (*pcVar10)(iVar1,0xcf,*(int *)(pcVar9 + 0x3ea324) + -0x3350);\n  if (*(int *)(iVar1 + 0x14) == 0) {\n    return;\n  }\n  if (-1 < *(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1) {\n    pcVar9 = *(code **)(pcVar10 + 0x3ea2a4);\n    iVar1 = *(int *)(pcVar10 + 0x3e9af0) + 0x3574;\n    (*pcVar9)(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea2c4) + -0x3350);\n    if (*(int *)(iVar1 + 0x14) == 0) {\n      return;\n    }\n    if (*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0) {\n      return;\n    }\n    pcVar10 = *(code **)(pcVar9 + 0x3ea244);\n    (*pcVar10)(*(int *)(pcVar9 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea264) + -0x3350);\n    this_00 = (Target_mips<64,_false> *)(*(int *)(pcVar10 + 0x3e9a30) + 0x3574);\n    (**(code **)(pcVar10 + 0x3ea1e4))(this_00,0x218,*(int *)(pcVar10 + 0x3ea204) + -0x39fc);\n    ppVar4 = (this_00->mips_mach_extensions_).\n             super__Vector_base<std::pair<unsigned_int,_unsigned_int>,_std::allocator<std::pair<unsigned_int,_unsigned_int>_>_>\n             ._M_impl._M_start;\n    if (*(char *)&ppVar4[1].second == '\0') {\n      Target_mips<64,_false>::is_output_micromips(this_00);\n      if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {\n        this_00->got_ =\n             (Mips_output_data_got<64,_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                  ._M_impl._M_start);\n        *(undefined4 *)&this_00->field_0x10 = 0;\n        *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n        return;\n      }\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n                ((Mips_output_data_mips_stubs<64,_false> *)this_00);\n    }\n    iVar1 = 0x10;\n    if ((int)(ppVar4[1].first << 6) < 0) {\n      if (*(char *)((int)&ppVar4[0x10].first + 2) != '\0') {\n        iVar1 = 0x14;\n      }\n    }\n    else {\n      iVar1 = 0x14;\n    }\n    if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {\n      this_00->got_ =\n           (Mips_output_data_got<64,_false> *)\n           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_);\n      *(undefined4 *)&this_00->field_0x10 = 0;\n      *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n      return;\n    }\n                    /* WARNING: Subroutine does not return */\n    Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n              ((Mips_output_data_mips_stubs<64,_false> *)this_00);\n  }\n  return;\n}\n\n" comment comment comment comment comment comment comment (declaration "void __thiscall\nanon_unknown.dwarf_29466b::Mips_output_section_reginfo<64,_false>::do_write\n          (Mips_output_section_reginfo<64,_false> *this,Output_file *of)\n\n{\n  int iVar1;" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "anon_unknown.dwarf_29466b::" identifier . identifier : :) identifier (ERROR "<64" < number_literal) , (ERROR "_false>::do_write\n          (Mips_output_section_reginfo<64,_false> *this,Output_file *of)\n\n{\n  int" identifier > : : (function_declarator "do_write\n          (Mips_output_section_reginfo<64,_false> *this,Output_file *of)" identifier (parameter_list "(Mips_output_section_reginfo<64,_false> *this,Output_file *of)" ( (parameter_declaration "Mips_output_section_reginfo" type_identifier) (ERROR "<64" < number_literal) , (parameter_declaration "_false> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) , (parameter_declaration "Output_file *of" type_identifier (pointer_declarator "*of" * identifier)) ))) { primitive_type) identifier ;) (declaration "int *piVar2;" primitive_type (pointer_declarator "*piVar2" * identifier) ;) (declaration "uint uVar3;" type_identifier identifier ;) (expression_statement "Target_mips<64,_false> *this_00;" (update_expression "Target_mips<64,_false> *this_00" (binary_expression "Target_mips<64,_false> *this_00" (binary_expression "Target_mips<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*this_00" * identifier)) --) ;) (declaration "pointer ppVar4;" type_identifier identifier ;) (declaration "Output_file *this_1;" type_identifier (pointer_declarator "*this_1" * identifier) ;) (expression_statement "Sized_symbol<64> *pSVar5;" (update_expression "Sized_symbol<64> *pSVar5" (binary_expression "Sized_symbol<64> *pSVar5" (binary_expression "Sized_symbol<64" identifier < number_literal) > (pointer_expression "*pSVar5" * identifier)) --) ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "code *pcVar9;" type_identifier (pointer_declarator "*pcVar9" * identifier) ;) (declaration "code *pcVar10;" type_identifier (pointer_declarator "*pcVar10" * identifier) ;) (declaration "undefined4 in_stack_fffffff4;" type_identifier identifier ;) (expression_statement "iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.field_0x20;" (assignment_expression "iVar1 = *(int *)&(this->super_Output_section_data).super_Output_data.field_0x20" identifier = (pointer_expression "*(int *)&(this->super_Output_section_data).super_Output_data.field_0x20" * (cast_expression "(int *)&(this->super_Output_section_data).super_Output_data.field_0x20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(this->super_Output_section_data).super_Output_data.field_0x20" & (field_expression "(this->super_Output_section_data).super_Output_data.field_0x20" (field_expression "(this->super_Output_section_data).super_Output_data" (parenthesized_expression "(this->super_Output_section_data)" ( (field_expression "this->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier))))) ;) (if_statement "if (iVar1 << 2 < 0) {\n    this_1 = *(Output_file **)&(this->super_Output_section_data).super_Output_data.offset_;\n    iVar6 = (int)(this->super_Output_section_data).super_Output_data.offset_;\n    if (iVar1 << 1 < 0) {\n      uVar3 = (uint)(this->super_Output_section_data).super_Output_data.data_size_;\n      if (-1 < (int)this_1) {\n        uVar7 = uVar3 + iVar6;\n        iVar1 = (int)&this_1->name_ + (uint)(uVar7 < uVar3);\n        this_1 = (Output_file *)(uint)(*(int *)&of->file_size_ < iVar1);\n        if ((this_1 == (Output_file *)0x0) &&\n           ((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)))) {\n          uVar7 = *(uint *)&this->gprmask_;\n          uVar3 = (uint)this->gprmask_;\n          piVar2 = (int *)(of->base_ + iVar6);\n          pSVar5 = this->target_->gp_;\n          piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          *piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask1_;\n          uVar3 = (uint)this->cprmask1_;\n          piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask2_;\n          uVar3 = (uint)this->cprmask2_;\n          piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask3_;\n          uVar3 = (uint)this->cprmask3_;\n          piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar3 = (uint)this->cprmask4_;\n          uVar7 = *(uint *)&this->cprmask4_;\n          piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          if (pSVar5 == (Sized_symbol<64> *)0x0) {\n            piVar2[5] = 0;\n            piVar2[6] = 0;\n            return;\n          }\n          uVar3 = *(uint *)&pSVar5->value_;\n          uVar7 = (uint)pSVar5->value_;\n          piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          return;\n        }\n      }\n      gold::Output_file::get_output_view\n                ((Output_file *)this,CONCAT44(0x4c9240,in_stack_fffffff4),(size_t)of,this_1);\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }" if (parenthesized_expression "(iVar1 << 2 < 0)" ( (binary_expression "iVar1 << 2 < 0" (binary_expression "iVar1 << 2" identifier << number_literal) < number_literal) )) (compound_statement "{\n    this_1 = *(Output_file **)&(this->super_Output_section_data).super_Output_data.offset_;\n    iVar6 = (int)(this->super_Output_section_data).super_Output_data.offset_;\n    if (iVar1 << 1 < 0) {\n      uVar3 = (uint)(this->super_Output_section_data).super_Output_data.data_size_;\n      if (-1 < (int)this_1) {\n        uVar7 = uVar3 + iVar6;\n        iVar1 = (int)&this_1->name_ + (uint)(uVar7 < uVar3);\n        this_1 = (Output_file *)(uint)(*(int *)&of->file_size_ < iVar1);\n        if ((this_1 == (Output_file *)0x0) &&\n           ((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)))) {\n          uVar7 = *(uint *)&this->gprmask_;\n          uVar3 = (uint)this->gprmask_;\n          piVar2 = (int *)(of->base_ + iVar6);\n          pSVar5 = this->target_->gp_;\n          piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          *piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask1_;\n          uVar3 = (uint)this->cprmask1_;\n          piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask2_;\n          uVar3 = (uint)this->cprmask2_;\n          piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask3_;\n          uVar3 = (uint)this->cprmask3_;\n          piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar3 = (uint)this->cprmask4_;\n          uVar7 = *(uint *)&this->cprmask4_;\n          piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          if (pSVar5 == (Sized_symbol<64> *)0x0) {\n            piVar2[5] = 0;\n            piVar2[6] = 0;\n            return;\n          }\n          uVar3 = *(uint *)&pSVar5->value_;\n          uVar7 = (uint)pSVar5->value_;\n          piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          return;\n        }\n      }\n      gold::Output_file::get_output_view\n                ((Output_file *)this,CONCAT44(0x4c9240,in_stack_fffffff4),(size_t)of,this_1);\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }" { (expression_statement "this_1 = *(Output_file **)&(this->super_Output_section_data).super_Output_data.offset_;" (assignment_expression "this_1 = *(Output_file **)&(this->super_Output_section_data).super_Output_data.offset_" identifier = (pointer_expression "*(Output_file **)&(this->super_Output_section_data).super_Output_data.offset_" * (cast_expression "(Output_file **)&(this->super_Output_section_data).super_Output_data.offset_" ( (type_descriptor "Output_file **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&(this->super_Output_section_data).super_Output_data.offset_" & (field_expression "(this->super_Output_section_data).super_Output_data.offset_" (field_expression "(this->super_Output_section_data).super_Output_data" (parenthesized_expression "(this->super_Output_section_data)" ( (field_expression "this->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier))))) ;) (expression_statement "iVar6 = (int)(this->super_Output_section_data).super_Output_data.offset_;" (assignment_expression "iVar6 = (int)(this->super_Output_section_data).super_Output_data.offset_" identifier = (cast_expression "(int)(this->super_Output_section_data).super_Output_data.offset_" ( (type_descriptor "int" primitive_type) ) (field_expression "(this->super_Output_section_data).super_Output_data.offset_" (field_expression "(this->super_Output_section_data).super_Output_data" (parenthesized_expression "(this->super_Output_section_data)" ( (field_expression "this->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier))) ;) (if_statement "if (iVar1 << 1 < 0) {\n      uVar3 = (uint)(this->super_Output_section_data).super_Output_data.data_size_;\n      if (-1 < (int)this_1) {\n        uVar7 = uVar3 + iVar6;\n        iVar1 = (int)&this_1->name_ + (uint)(uVar7 < uVar3);\n        this_1 = (Output_file *)(uint)(*(int *)&of->file_size_ < iVar1);\n        if ((this_1 == (Output_file *)0x0) &&\n           ((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)))) {\n          uVar7 = *(uint *)&this->gprmask_;\n          uVar3 = (uint)this->gprmask_;\n          piVar2 = (int *)(of->base_ + iVar6);\n          pSVar5 = this->target_->gp_;\n          piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          *piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask1_;\n          uVar3 = (uint)this->cprmask1_;\n          piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask2_;\n          uVar3 = (uint)this->cprmask2_;\n          piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask3_;\n          uVar3 = (uint)this->cprmask3_;\n          piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar3 = (uint)this->cprmask4_;\n          uVar7 = *(uint *)&this->cprmask4_;\n          piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          if (pSVar5 == (Sized_symbol<64> *)0x0) {\n            piVar2[5] = 0;\n            piVar2[6] = 0;\n            return;\n          }\n          uVar3 = *(uint *)&pSVar5->value_;\n          uVar7 = (uint)pSVar5->value_;\n          piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          return;\n        }\n      }\n      gold::Output_file::get_output_view\n                ((Output_file *)this,CONCAT44(0x4c9240,in_stack_fffffff4),(size_t)of,this_1);\n    }" if (parenthesized_expression "(iVar1 << 1 < 0)" ( (binary_expression "iVar1 << 1 < 0" (binary_expression "iVar1 << 1" identifier << number_literal) < number_literal) )) (compound_statement "{\n      uVar3 = (uint)(this->super_Output_section_data).super_Output_data.data_size_;\n      if (-1 < (int)this_1) {\n        uVar7 = uVar3 + iVar6;\n        iVar1 = (int)&this_1->name_ + (uint)(uVar7 < uVar3);\n        this_1 = (Output_file *)(uint)(*(int *)&of->file_size_ < iVar1);\n        if ((this_1 == (Output_file *)0x0) &&\n           ((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)))) {\n          uVar7 = *(uint *)&this->gprmask_;\n          uVar3 = (uint)this->gprmask_;\n          piVar2 = (int *)(of->base_ + iVar6);\n          pSVar5 = this->target_->gp_;\n          piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          *piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask1_;\n          uVar3 = (uint)this->cprmask1_;\n          piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask2_;\n          uVar3 = (uint)this->cprmask2_;\n          piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask3_;\n          uVar3 = (uint)this->cprmask3_;\n          piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar3 = (uint)this->cprmask4_;\n          uVar7 = *(uint *)&this->cprmask4_;\n          piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          if (pSVar5 == (Sized_symbol<64> *)0x0) {\n            piVar2[5] = 0;\n            piVar2[6] = 0;\n            return;\n          }\n          uVar3 = *(uint *)&pSVar5->value_;\n          uVar7 = (uint)pSVar5->value_;\n          piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          return;\n        }\n      }\n      gold::Output_file::get_output_view\n                ((Output_file *)this,CONCAT44(0x4c9240,in_stack_fffffff4),(size_t)of,this_1);\n    }" { (expression_statement "uVar3 = (uint)(this->super_Output_section_data).super_Output_data.data_size_;" (assignment_expression "uVar3 = (uint)(this->super_Output_section_data).super_Output_data.data_size_" identifier = (field_expression "(uint)(this->super_Output_section_data).super_Output_data.data_size_" (field_expression "(uint)(this->super_Output_section_data).super_Output_data" (call_expression "(uint)(this->super_Output_section_data)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(this->super_Output_section_data)" ( (field_expression "this->super_Output_section_data" identifier -> field_identifier) ))) . field_identifier) . field_identifier)) ;) (if_statement "if (-1 < (int)this_1) {\n        uVar7 = uVar3 + iVar6;\n        iVar1 = (int)&this_1->name_ + (uint)(uVar7 < uVar3);\n        this_1 = (Output_file *)(uint)(*(int *)&of->file_size_ < iVar1);\n        if ((this_1 == (Output_file *)0x0) &&\n           ((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)))) {\n          uVar7 = *(uint *)&this->gprmask_;\n          uVar3 = (uint)this->gprmask_;\n          piVar2 = (int *)(of->base_ + iVar6);\n          pSVar5 = this->target_->gp_;\n          piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          *piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask1_;\n          uVar3 = (uint)this->cprmask1_;\n          piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask2_;\n          uVar3 = (uint)this->cprmask2_;\n          piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask3_;\n          uVar3 = (uint)this->cprmask3_;\n          piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar3 = (uint)this->cprmask4_;\n          uVar7 = *(uint *)&this->cprmask4_;\n          piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          if (pSVar5 == (Sized_symbol<64> *)0x0) {\n            piVar2[5] = 0;\n            piVar2[6] = 0;\n            return;\n          }\n          uVar3 = *(uint *)&pSVar5->value_;\n          uVar7 = (uint)pSVar5->value_;\n          piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          return;\n        }\n      }" if (parenthesized_expression "(-1 < (int)this_1)" ( (binary_expression "-1 < (int)this_1" number_literal < (cast_expression "(int)this_1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        uVar7 = uVar3 + iVar6;\n        iVar1 = (int)&this_1->name_ + (uint)(uVar7 < uVar3);\n        this_1 = (Output_file *)(uint)(*(int *)&of->file_size_ < iVar1);\n        if ((this_1 == (Output_file *)0x0) &&\n           ((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)))) {\n          uVar7 = *(uint *)&this->gprmask_;\n          uVar3 = (uint)this->gprmask_;\n          piVar2 = (int *)(of->base_ + iVar6);\n          pSVar5 = this->target_->gp_;\n          piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          *piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask1_;\n          uVar3 = (uint)this->cprmask1_;\n          piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask2_;\n          uVar3 = (uint)this->cprmask2_;\n          piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask3_;\n          uVar3 = (uint)this->cprmask3_;\n          piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar3 = (uint)this->cprmask4_;\n          uVar7 = *(uint *)&this->cprmask4_;\n          piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          if (pSVar5 == (Sized_symbol<64> *)0x0) {\n            piVar2[5] = 0;\n            piVar2[6] = 0;\n            return;\n          }\n          uVar3 = *(uint *)&pSVar5->value_;\n          uVar7 = (uint)pSVar5->value_;\n          piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          return;\n        }\n      }" { (expression_statement "uVar7 = uVar3 + iVar6;" (assignment_expression "uVar7 = uVar3 + iVar6" identifier = (binary_expression "uVar3 + iVar6" identifier + identifier)) ;) (expression_statement "iVar1 = (int)&this_1->name_ + (uint)(uVar7 < uVar3);" (assignment_expression "iVar1 = (int)&this_1->name_ + (uint)(uVar7 < uVar3)" identifier = (binary_expression "(int)&this_1->name_ + (uint)(uVar7 < uVar3)" (cast_expression "(int)&this_1->name_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this_1->name_" & (field_expression "this_1->name_" identifier -> field_identifier))) + (call_expression "(uint)(uVar7 < uVar3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar7 < uVar3)" ( (binary_expression "uVar7 < uVar3" identifier < identifier) ))))) ;) (expression_statement "this_1 = (Output_file *)(uint)(*(int *)&of->file_size_ < iVar1);" (assignment_expression "this_1 = (Output_file *)(uint)(*(int *)&of->file_size_ < iVar1)" identifier = (cast_expression "(Output_file *)(uint)(*(int *)&of->file_size_ < iVar1)" ( (type_descriptor "Output_file *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(uint)(*(int *)&of->file_size_ < iVar1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(int *)&of->file_size_ < iVar1)" ( (binary_expression "*(int *)&of->file_size_ < iVar1" (pointer_expression "*(int *)&of->file_size_" * (cast_expression "(int *)&of->file_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&of->file_size_" & (field_expression "of->file_size_" identifier -> field_identifier)))) < identifier) ))))) ;) (if_statement "if ((this_1 == (Output_file *)0x0) &&\n           ((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)))) {\n          uVar7 = *(uint *)&this->gprmask_;\n          uVar3 = (uint)this->gprmask_;\n          piVar2 = (int *)(of->base_ + iVar6);\n          pSVar5 = this->target_->gp_;\n          piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          *piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask1_;\n          uVar3 = (uint)this->cprmask1_;\n          piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask2_;\n          uVar3 = (uint)this->cprmask2_;\n          piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask3_;\n          uVar3 = (uint)this->cprmask3_;\n          piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar3 = (uint)this->cprmask4_;\n          uVar7 = *(uint *)&this->cprmask4_;\n          piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          if (pSVar5 == (Sized_symbol<64> *)0x0) {\n            piVar2[5] = 0;\n            piVar2[6] = 0;\n            return;\n          }\n          uVar3 = *(uint *)&pSVar5->value_;\n          uVar7 = (uint)pSVar5->value_;\n          piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          return;\n        }" if (parenthesized_expression "((this_1 == (Output_file *)0x0) &&\n           ((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_))))" ( (binary_expression "(this_1 == (Output_file *)0x0) &&\n           ((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)))" (parenthesized_expression "(this_1 == (Output_file *)0x0)" ( (binary_expression "this_1 == (Output_file *)0x0" identifier == (cast_expression "(Output_file *)0x0" ( (type_descriptor "Output_file *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "((*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)))" ( (parenthesized_expression "(*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_))" ( (binary_expression "*(int *)&of->file_size_ != iVar1 || (uVar7 <= (uint)of->file_size_)" (binary_expression "*(int *)&of->file_size_ != iVar1" (pointer_expression "*(int *)&of->file_size_" * (cast_expression "(int *)&of->file_size_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&of->file_size_" & (field_expression "of->file_size_" identifier -> field_identifier)))) != identifier) || (parenthesized_expression "(uVar7 <= (uint)of->file_size_)" ( (binary_expression "uVar7 <= (uint)of->file_size_" identifier <= (cast_expression "(uint)of->file_size_" ( (type_descriptor "uint" type_identifier) ) (field_expression "of->file_size_" identifier -> field_identifier))) ))) )) ))) )) (compound_statement "{\n          uVar7 = *(uint *)&this->gprmask_;\n          uVar3 = (uint)this->gprmask_;\n          piVar2 = (int *)(of->base_ + iVar6);\n          pSVar5 = this->target_->gp_;\n          piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          *piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask1_;\n          uVar3 = (uint)this->cprmask1_;\n          piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask2_;\n          uVar3 = (uint)this->cprmask2_;\n          piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar7 = *(uint *)&this->cprmask3_;\n          uVar3 = (uint)this->cprmask3_;\n          piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          uVar3 = (uint)this->cprmask4_;\n          uVar7 = *(uint *)&this->cprmask4_;\n          piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          if (pSVar5 == (Sized_symbol<64> *)0x0) {\n            piVar2[5] = 0;\n            piVar2[6] = 0;\n            return;\n          }\n          uVar3 = *(uint *)&pSVar5->value_;\n          uVar7 = (uint)pSVar5->value_;\n          piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n          return;\n        }" { (expression_statement "uVar7 = *(uint *)&this->gprmask_;" (assignment_expression "uVar7 = *(uint *)&this->gprmask_" identifier = (pointer_expression "*(uint *)&this->gprmask_" * (cast_expression "(uint *)&this->gprmask_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this->gprmask_" & (field_expression "this->gprmask_" identifier -> field_identifier))))) ;) (expression_statement "uVar3 = (uint)this->gprmask_;" (assignment_expression "uVar3 = (uint)this->gprmask_" identifier = (cast_expression "(uint)this->gprmask_" ( (type_descriptor "uint" type_identifier) ) (field_expression "this->gprmask_" identifier -> field_identifier))) ;) (expression_statement "piVar2 = (int *)(of->base_ + iVar6);" (assignment_expression "piVar2 = (int *)(of->base_ + iVar6)" identifier = (cast_expression "(int *)(of->base_ + iVar6)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(of->base_ + iVar6)" ( (binary_expression "of->base_ + iVar6" (field_expression "of->base_" identifier -> field_identifier) + identifier) )))) ;) (expression_statement "pSVar5 = this->target_->gp_;" (assignment_expression "pSVar5 = this->target_->gp_" identifier = (field_expression "this->target_->gp_" (field_expression "this->target_" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar2[1] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar2[1]" identifier [ number_literal ]) = (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "*piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "*piVar2 = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (pointer_expression "*piVar2" * identifier) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar7 = *(uint *)&this->cprmask1_;" (assignment_expression "uVar7 = *(uint *)&this->cprmask1_" identifier = (pointer_expression "*(uint *)&this->cprmask1_" * (cast_expression "(uint *)&this->cprmask1_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this->cprmask1_" & (field_expression "this->cprmask1_" identifier -> field_identifier))))) ;) (expression_statement "uVar3 = (uint)this->cprmask1_;" (assignment_expression "uVar3 = (uint)this->cprmask1_" identifier = (cast_expression "(uint)this->cprmask1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "this->cprmask1_" identifier -> field_identifier))) ;) (expression_statement "piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar2[2] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar2[2]" identifier [ number_literal ]) = (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar2[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar2[1]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar7 = *(uint *)&this->cprmask2_;" (assignment_expression "uVar7 = *(uint *)&this->cprmask2_" identifier = (pointer_expression "*(uint *)&this->cprmask2_" * (cast_expression "(uint *)&this->cprmask2_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this->cprmask2_" & (field_expression "this->cprmask2_" identifier -> field_identifier))))) ;) (expression_statement "uVar3 = (uint)this->cprmask2_;" (assignment_expression "uVar3 = (uint)this->cprmask2_" identifier = (cast_expression "(uint)this->cprmask2_" ( (type_descriptor "uint" type_identifier) ) (field_expression "this->cprmask2_" identifier -> field_identifier))) ;) (expression_statement "piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar2[3] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar2[3]" identifier [ number_literal ]) = (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar2[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar2[2]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar7 = *(uint *)&this->cprmask3_;" (assignment_expression "uVar7 = *(uint *)&this->cprmask3_" identifier = (pointer_expression "*(uint *)&this->cprmask3_" * (cast_expression "(uint *)&this->cprmask3_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this->cprmask3_" & (field_expression "this->cprmask3_" identifier -> field_identifier))))) ;) (expression_statement "uVar3 = (uint)this->cprmask3_;" (assignment_expression "uVar3 = (uint)this->cprmask3_" identifier = (cast_expression "(uint)this->cprmask3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "this->cprmask3_" identifier -> field_identifier))) ;) (expression_statement "piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar2[4] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar2[4]" identifier [ number_literal ]) = (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar2[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar2[3]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar3 = (uint)this->cprmask4_;" (assignment_expression "uVar3 = (uint)this->cprmask4_" identifier = (cast_expression "(uint)this->cprmask4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "this->cprmask4_" identifier -> field_identifier))) ;) (expression_statement "uVar7 = *(uint *)&this->cprmask4_;" (assignment_expression "uVar7 = *(uint *)&this->cprmask4_" identifier = (pointer_expression "*(uint *)&this->cprmask4_" * (cast_expression "(uint *)&this->cprmask4_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this->cprmask4_" & (field_expression "this->cprmask4_" identifier -> field_identifier))))) ;) (expression_statement "piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar2[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar2[4]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar2[5]" identifier [ number_literal ]) = (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (if_statement "if (pSVar5 == (Sized_symbol<64> *)0x0) {\n            piVar2[5] = 0;\n            piVar2[6] = 0;\n            return;\n          }" if (parenthesized_expression "(pSVar5 == (Sized_symbol<64> *)0x0)" ( (binary_expression "pSVar5 == (Sized_symbol<64> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<64> *)0x0)" ( (binary_expression "Sized_symbol<64> *)0x0" (binary_expression "Sized_symbol<64" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) (compound_statement "{\n            piVar2[5] = 0;\n            piVar2[6] = 0;\n            return;\n          }" { (expression_statement "piVar2[5] = 0;" (assignment_expression "piVar2[5] = 0" (subscript_expression "piVar2[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar2[6] = 0;" (assignment_expression "piVar2[6] = 0" (subscript_expression "piVar2[6]" identifier [ number_literal ]) = number_literal) ;) (return_statement "return;" return ;) })) (expression_statement "uVar3 = *(uint *)&pSVar5->value_;" (assignment_expression "uVar3 = *(uint *)&pSVar5->value_" identifier = (pointer_expression "*(uint *)&pSVar5->value_" * (cast_expression "(uint *)&pSVar5->value_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pSVar5->value_" & (field_expression "pSVar5->value_" identifier -> field_identifier))))) ;) (expression_statement "uVar7 = (uint)pSVar5->value_;" (assignment_expression "uVar7 = (uint)pSVar5->value_" identifier = (cast_expression "(uint)pSVar5->value_" ( (type_descriptor "uint" type_identifier) ) (field_expression "pSVar5->value_" identifier -> field_identifier))) ;) (expression_statement "piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar2[6] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar2[6]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar2[5] = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar2[5]" identifier [ number_literal ]) = (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (return_statement "return;" return ;) })) })) (labeled_statement "gold::Output_file::get_output_view\n                ((Output_file *)this,CONCAT44(0x4c9240,in_stack_fffffff4),(size_t)of,this_1);" statement_identifier : (ERROR ":" :) (labeled_statement "Output_file::get_output_view\n                ((Output_file *)this,CONCAT44(0x4c9240,in_stack_fffffff4),(size_t)of,this_1);" statement_identifier : (ERROR ":" :) (expression_statement "get_output_view\n                ((Output_file *)this,CONCAT44(0x4c9240,in_stack_fffffff4),(size_t)of,this_1);" (call_expression "get_output_view\n                ((Output_file *)this,CONCAT44(0x4c9240,in_stack_fffffff4),(size_t)of,this_1)" identifier (argument_list "((Output_file *)this,CONCAT44(0x4c9240,in_stack_fffffff4),(size_t)of,this_1)" ( (cast_expression "(Output_file *)this" ( (type_descriptor "Output_file *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (call_expression "CONCAT44(0x4c9240,in_stack_fffffff4)" identifier (argument_list "(0x4c9240,in_stack_fffffff4)" ( number_literal , identifier ))) , (cast_expression "(size_t)of" ( (type_descriptor "size_t" primitive_type) ) identifier) , identifier ))) ;))) })) (expression_statement "(*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );" (call_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              )" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004c1a30" * (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              )" ( (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574" identifier + number_literal) , number_literal , (binary_expression "PTR_s__s_004c1a50 + -0x3350" identifier + number_literal) ))) ;) })) (expression_statement "puVar8 = PTR_do_gold_unreachable_004c1a30;" (assignment_expression "puVar8 = PTR_do_gold_unreachable_004c1a30" identifier = identifier) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);" (call_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004c1a30" * (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c)" ( (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574" identifier + number_literal) , number_literal , (binary_expression "PTR_s__s_004c1a50 + -0x3a3c" identifier + number_literal) ))) ;) (expression_statement "pcVar9 = *(code **)(puVar8 + 0x3ea3cc);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x3ea3cc)" identifier = (pointer_expression "*(code **)(puVar8 + 0x3ea3cc)" * (cast_expression "(code **)(puVar8 + 0x3ea3cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x3ea3cc)" ( (binary_expression "puVar8 + 0x3ea3cc" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(puVar8 + 0x3e9c18) + 0x3574;" (assignment_expression "iVar1 = *(int *)(puVar8 + 0x3e9c18) + 0x3574" identifier = (binary_expression "*(int *)(puVar8 + 0x3e9c18) + 0x3574" (pointer_expression "*(int *)(puVar8 + 0x3e9c18)" * (cast_expression "(int *)(puVar8 + 0x3e9c18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x3e9c18)" ( (binary_expression "puVar8 + 0x3e9c18" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar9)(iVar1,0xc5,*(int *)(puVar8 + 0x3ea3ec) + -0x3478);" (call_expression "(*pcVar9)(iVar1,0xc5,*(int *)(puVar8 + 0x3ea3ec) + -0x3478)" (parenthesized_expression "(*pcVar9)" ( (pointer_expression "*pcVar9" * identifier) )) (argument_list "(iVar1,0xc5,*(int *)(puVar8 + 0x3ea3ec) + -0x3478)" ( identifier , number_literal , (binary_expression "*(int *)(puVar8 + 0x3ea3ec) + -0x3478" (pointer_expression "*(int *)(puVar8 + 0x3ea3ec)" * (cast_expression "(int *)(puVar8 + 0x3ea3ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x3ea3ec)" ( (binary_expression "puVar8 + 0x3ea3ec" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar1 + 0x14) == 0) {\n    return;\n  }" if (parenthesized_expression "(*(int *)(iVar1 + 0x14) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x14) == 0" (pointer_expression "*(int *)(iVar1 + 0x14)" * (cast_expression "(int *)(iVar1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (if_statement "if (*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0) {\n    return;\n  }" if (parenthesized_expression "(*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0)" ( (binary_expression "*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0" (binary_expression "*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1" (pointer_expression "*(int *)(*(int *)(iVar1 + 0x14) + 0x20)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x14) + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x14) + 0x20)" ( (binary_expression "*(int *)(iVar1 + 0x14) + 0x20" (pointer_expression "*(int *)(iVar1 + 0x14)" * (cast_expression "(int *)(iVar1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))) + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "pcVar10 = *(code **)(pcVar9 + 0x3ea398);" (assignment_expression "pcVar10 = *(code **)(pcVar9 + 0x3ea398)" identifier = (pointer_expression "*(code **)(pcVar9 + 0x3ea398)" * (cast_expression "(code **)(pcVar9 + 0x3ea398)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar9 + 0x3ea398)" ( (binary_expression "pcVar9 + 0x3ea398" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar10)(*(int *)(pcVar9 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea3b8) + -0x3350);" (call_expression "(*pcVar10)(*(int *)(pcVar9 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea3b8) + -0x3350)" (parenthesized_expression "(*pcVar10)" ( (pointer_expression "*pcVar10" * identifier) )) (argument_list "(*(int *)(pcVar9 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea3b8) + -0x3350)" ( (binary_expression "*(int *)(pcVar9 + 0x3e9be4) + 0x3574" (pointer_expression "*(int *)(pcVar9 + 0x3e9be4)" * (cast_expression "(int *)(pcVar9 + 0x3e9be4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar9 + 0x3e9be4)" ( (binary_expression "pcVar9 + 0x3e9be4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar9 + 0x3ea3b8) + -0x3350" (pointer_expression "*(int *)(pcVar9 + 0x3ea3b8)" * (cast_expression "(int *)(pcVar9 + 0x3ea3b8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar9 + 0x3ea3b8)" ( (binary_expression "pcVar9 + 0x3ea3b8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar9 = *(code **)(pcVar10 + 0x3ea338);" (assignment_expression "pcVar9 = *(code **)(pcVar10 + 0x3ea338)" identifier = (pointer_expression "*(code **)(pcVar10 + 0x3ea338)" * (cast_expression "(code **)(pcVar10 + 0x3ea338)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar10 + 0x3ea338)" ( (binary_expression "pcVar10 + 0x3ea338" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar10 + 0x3e9b84) + 0x3574;" (assignment_expression "iVar1 = *(int *)(pcVar10 + 0x3e9b84) + 0x3574" identifier = (binary_expression "*(int *)(pcVar10 + 0x3e9b84) + 0x3574" (pointer_expression "*(int *)(pcVar10 + 0x3e9b84)" * (cast_expression "(int *)(pcVar10 + 0x3e9b84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar10 + 0x3e9b84)" ( (binary_expression "pcVar10 + 0x3e9b84" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar9)(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea358) + -0x3350);" (call_expression "(*pcVar9)(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea358) + -0x3350)" (parenthesized_expression "(*pcVar9)" ( (pointer_expression "*pcVar9" * identifier) )) (argument_list "(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea358) + -0x3350)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar10 + 0x3ea358) + -0x3350" (pointer_expression "*(int *)(pcVar10 + 0x3ea358)" * (cast_expression "(int *)(pcVar10 + 0x3ea358)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar10 + 0x3ea358)" ( (binary_expression "pcVar10 + 0x3ea358" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar1 + 0x14) == 0) {\n    return;\n  }" if (parenthesized_expression "(*(int *)(iVar1 + 0x14) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x14) == 0" (pointer_expression "*(int *)(iVar1 + 0x14)" * (cast_expression "(int *)(iVar1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (if_statement "if (*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0) {\n    return;\n  }" if (parenthesized_expression "(*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0)" ( (binary_expression "*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0" (binary_expression "*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1" (pointer_expression "*(int *)(*(int *)(iVar1 + 0x14) + 0x20)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x14) + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x14) + 0x20)" ( (binary_expression "*(int *)(iVar1 + 0x14) + 0x20" (pointer_expression "*(int *)(iVar1 + 0x14)" * (cast_expression "(int *)(iVar1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))) + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "pcVar10 = *(code **)(pcVar9 + 0x3ea304);" (assignment_expression "pcVar10 = *(code **)(pcVar9 + 0x3ea304)" identifier = (pointer_expression "*(code **)(pcVar9 + 0x3ea304)" * (cast_expression "(code **)(pcVar9 + 0x3ea304)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar9 + 0x3ea304)" ( (binary_expression "pcVar9 + 0x3ea304" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar9 + 0x3e9b50) + 0x3574;" (assignment_expression "iVar1 = *(int *)(pcVar9 + 0x3e9b50) + 0x3574" identifier = (binary_expression "*(int *)(pcVar9 + 0x3e9b50) + 0x3574" (pointer_expression "*(int *)(pcVar9 + 0x3e9b50)" * (cast_expression "(int *)(pcVar9 + 0x3e9b50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar9 + 0x3e9b50)" ( (binary_expression "pcVar9 + 0x3e9b50" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar10)(iVar1,0xcf,*(int *)(pcVar9 + 0x3ea324) + -0x3350);" (call_expression "(*pcVar10)(iVar1,0xcf,*(int *)(pcVar9 + 0x3ea324) + -0x3350)" (parenthesized_expression "(*pcVar10)" ( (pointer_expression "*pcVar10" * identifier) )) (argument_list "(iVar1,0xcf,*(int *)(pcVar9 + 0x3ea324) + -0x3350)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar9 + 0x3ea324) + -0x3350" (pointer_expression "*(int *)(pcVar9 + 0x3ea324)" * (cast_expression "(int *)(pcVar9 + 0x3ea324)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar9 + 0x3ea324)" ( (binary_expression "pcVar9 + 0x3ea324" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar1 + 0x14) == 0) {\n    return;\n  }" if (parenthesized_expression "(*(int *)(iVar1 + 0x14) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x14) == 0" (pointer_expression "*(int *)(iVar1 + 0x14)" * (cast_expression "(int *)(iVar1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (if_statement "if (-1 < *(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1) {\n    pcVar9 = *(code **)(pcVar10 + 0x3ea2a4);\n    iVar1 = *(int *)(pcVar10 + 0x3e9af0) + 0x3574;\n    (*pcVar9)(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea2c4) + -0x3350);\n    if (*(int *)(iVar1 + 0x14) == 0) {\n      return;\n    }\n    if (*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0) {\n      return;\n    }\n    pcVar10 = *(code **)(pcVar9 + 0x3ea244);\n    (*pcVar10)(*(int *)(pcVar9 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea264) + -0x3350);\n    this_00 = (Target_mips<64,_false> *)(*(int *)(pcVar10 + 0x3e9a30) + 0x3574);\n    (**(code **)(pcVar10 + 0x3ea1e4))(this_00,0x218,*(int *)(pcVar10 + 0x3ea204) + -0x39fc);\n    ppVar4 = (this_00->mips_mach_extensions_).\n             super__Vector_base<std::pair<unsigned_int,_unsigned_int>,_std::allocator<std::pair<unsigned_int,_unsigned_int>_>_>\n             ._M_impl._M_start;\n    if (*(char *)&ppVar4[1].second == '\0') {\n      Target_mips<64,_false>::is_output_micromips(this_00);\n      if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {\n        this_00->got_ =\n             (Mips_output_data_got<64,_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                  ._M_impl._M_start);\n        *(undefined4 *)&this_00->field_0x10 = 0;\n        *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n        return;\n      }\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n                ((Mips_output_data_mips_stubs<64,_false> *)this_00);\n    }\n    iVar1 = 0x10;\n    if ((int)(ppVar4[1].first << 6) < 0) {\n      if (*(char *)((int)&ppVar4[0x10].first + 2) != '\0') {\n        iVar1 = 0x14;\n      }\n    }\n    else {\n      iVar1 = 0x14;\n    }\n    if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {\n      this_00->got_ =\n           (Mips_output_data_got<64,_false> *)\n           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_);\n      *(undefined4 *)&this_00->field_0x10 = 0;\n      *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n      return;\n    }\n                    /* WARNING: Subroutine does not return */\n    Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n              ((Mips_output_data_mips_stubs<64,_false> *)this_00);\n  }" if (parenthesized_expression "(-1 < *(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1" number_literal < (binary_expression "*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1" (pointer_expression "*(int *)(*(int *)(iVar1 + 0x14) + 0x20)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x14) + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x14) + 0x20)" ( (binary_expression "*(int *)(iVar1 + 0x14) + 0x20" (pointer_expression "*(int *)(iVar1 + 0x14)" * (cast_expression "(int *)(iVar1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))) + number_literal) )))) << number_literal)) )) (compound_statement "{\n    pcVar9 = *(code **)(pcVar10 + 0x3ea2a4);\n    iVar1 = *(int *)(pcVar10 + 0x3e9af0) + 0x3574;\n    (*pcVar9)(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea2c4) + -0x3350);\n    if (*(int *)(iVar1 + 0x14) == 0) {\n      return;\n    }\n    if (*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0) {\n      return;\n    }\n    pcVar10 = *(code **)(pcVar9 + 0x3ea244);\n    (*pcVar10)(*(int *)(pcVar9 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea264) + -0x3350);\n    this_00 = (Target_mips<64,_false> *)(*(int *)(pcVar10 + 0x3e9a30) + 0x3574);\n    (**(code **)(pcVar10 + 0x3ea1e4))(this_00,0x218,*(int *)(pcVar10 + 0x3ea204) + -0x39fc);\n    ppVar4 = (this_00->mips_mach_extensions_).\n             super__Vector_base<std::pair<unsigned_int,_unsigned_int>,_std::allocator<std::pair<unsigned_int,_unsigned_int>_>_>\n             ._M_impl._M_start;\n    if (*(char *)&ppVar4[1].second == '\0') {\n      Target_mips<64,_false>::is_output_micromips(this_00);\n      if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {\n        this_00->got_ =\n             (Mips_output_data_got<64,_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                  ._M_impl._M_start);\n        *(undefined4 *)&this_00->field_0x10 = 0;\n        *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n        return;\n      }\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n                ((Mips_output_data_mips_stubs<64,_false> *)this_00);\n    }\n    iVar1 = 0x10;\n    if ((int)(ppVar4[1].first << 6) < 0) {\n      if (*(char *)((int)&ppVar4[0x10].first + 2) != '\0') {\n        iVar1 = 0x14;\n      }\n    }\n    else {\n      iVar1 = 0x14;\n    }\n    if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {\n      this_00->got_ =\n           (Mips_output_data_got<64,_false> *)\n           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_);\n      *(undefined4 *)&this_00->field_0x10 = 0;\n      *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n      return;\n    }\n                    /* WARNING: Subroutine does not return */\n    Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n              ((Mips_output_data_mips_stubs<64,_false> *)this_00);\n  }" { (expression_statement "pcVar9 = *(code **)(pcVar10 + 0x3ea2a4);" (assignment_expression "pcVar9 = *(code **)(pcVar10 + 0x3ea2a4)" identifier = (pointer_expression "*(code **)(pcVar10 + 0x3ea2a4)" * (cast_expression "(code **)(pcVar10 + 0x3ea2a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar10 + 0x3ea2a4)" ( (binary_expression "pcVar10 + 0x3ea2a4" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar10 + 0x3e9af0) + 0x3574;" (assignment_expression "iVar1 = *(int *)(pcVar10 + 0x3e9af0) + 0x3574" identifier = (binary_expression "*(int *)(pcVar10 + 0x3e9af0) + 0x3574" (pointer_expression "*(int *)(pcVar10 + 0x3e9af0)" * (cast_expression "(int *)(pcVar10 + 0x3e9af0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar10 + 0x3e9af0)" ( (binary_expression "pcVar10 + 0x3e9af0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar9)(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea2c4) + -0x3350);" (call_expression "(*pcVar9)(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea2c4) + -0x3350)" (parenthesized_expression "(*pcVar9)" ( (pointer_expression "*pcVar9" * identifier) )) (argument_list "(iVar1,0xcf,*(int *)(pcVar10 + 0x3ea2c4) + -0x3350)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar10 + 0x3ea2c4) + -0x3350" (pointer_expression "*(int *)(pcVar10 + 0x3ea2c4)" * (cast_expression "(int *)(pcVar10 + 0x3ea2c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar10 + 0x3ea2c4)" ( (binary_expression "pcVar10 + 0x3ea2c4" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar1 + 0x14) == 0) {\n      return;\n    }" if (parenthesized_expression "(*(int *)(iVar1 + 0x14) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x14) == 0" (pointer_expression "*(int *)(iVar1 + 0x14)" * (cast_expression "(int *)(iVar1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (if_statement "if (*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0) {\n      return;\n    }" if (parenthesized_expression "(*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0)" ( (binary_expression "*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1 < 0" (binary_expression "*(int *)(*(int *)(iVar1 + 0x14) + 0x20) << 1" (pointer_expression "*(int *)(*(int *)(iVar1 + 0x14) + 0x20)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x14) + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x14) + 0x20)" ( (binary_expression "*(int *)(iVar1 + 0x14) + 0x20" (pointer_expression "*(int *)(iVar1 + 0x14)" * (cast_expression "(int *)(iVar1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x14)" ( (binary_expression "iVar1 + 0x14" identifier + number_literal) )))) + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "pcVar10 = *(code **)(pcVar9 + 0x3ea244);" (assignment_expression "pcVar10 = *(code **)(pcVar9 + 0x3ea244)" identifier = (pointer_expression "*(code **)(pcVar9 + 0x3ea244)" * (cast_expression "(code **)(pcVar9 + 0x3ea244)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar9 + 0x3ea244)" ( (binary_expression "pcVar9 + 0x3ea244" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar10)(*(int *)(pcVar9 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea264) + -0x3350);" (call_expression "(*pcVar10)(*(int *)(pcVar9 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea264) + -0x3350)" (parenthesized_expression "(*pcVar10)" ( (pointer_expression "*pcVar10" * identifier) )) (argument_list "(*(int *)(pcVar9 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar9 + 0x3ea264) + -0x3350)" ( (binary_expression "*(int *)(pcVar9 + 0x3e9a90) + 0x3574" (pointer_expression "*(int *)(pcVar9 + 0x3e9a90)" * (cast_expression "(int *)(pcVar9 + 0x3e9a90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar9 + 0x3e9a90)" ( (binary_expression "pcVar9 + 0x3e9a90" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar9 + 0x3ea264) + -0x3350" (pointer_expression "*(int *)(pcVar9 + 0x3ea264)" * (cast_expression "(int *)(pcVar9 + 0x3ea264)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar9 + 0x3ea264)" ( (binary_expression "pcVar9 + 0x3ea264" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "this_00 = (Target_mips<64,_false> *)(*(int *)(pcVar10 + 0x3e9a30) + 0x3574);" (assignment_expression "this_00 = (Target_mips<64,_false> *)(*(int *)(pcVar10 + 0x3e9a30) + 0x3574)" identifier = (call_expression "(Target_mips<64,_false> *)(*(int *)(pcVar10 + 0x3e9a30) + 0x3574)" (parenthesized_expression "(Target_mips<64,_false> *)" ( (comma_expression "Target_mips<64,_false> *" (binary_expression "Target_mips<64" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "(*(int *)(pcVar10 + 0x3e9a30) + 0x3574)" ( (binary_expression "*(int *)(pcVar10 + 0x3e9a30) + 0x3574" (pointer_expression "*(int *)(pcVar10 + 0x3e9a30)" * (cast_expression "(int *)(pcVar10 + 0x3e9a30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar10 + 0x3e9a30)" ( (binary_expression "pcVar10 + 0x3e9a30" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar10 + 0x3ea1e4))(this_00,0x218,*(int *)(pcVar10 + 0x3ea204) + -0x39fc);" (call_expression "(**(code **)(pcVar10 + 0x3ea1e4))(this_00,0x218,*(int *)(pcVar10 + 0x3ea204) + -0x39fc)" (parenthesized_expression "(**(code **)(pcVar10 + 0x3ea1e4))" ( (pointer_expression "**(code **)(pcVar10 + 0x3ea1e4)" * (pointer_expression "*(code **)(pcVar10 + 0x3ea1e4)" * (cast_expression "(code **)(pcVar10 + 0x3ea1e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar10 + 0x3ea1e4)" ( (binary_expression "pcVar10 + 0x3ea1e4" identifier + number_literal) ))))) )) (argument_list "(this_00,0x218,*(int *)(pcVar10 + 0x3ea204) + -0x39fc)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar10 + 0x3ea204) + -0x39fc" (pointer_expression "*(int *)(pcVar10 + 0x3ea204)" * (cast_expression "(int *)(pcVar10 + 0x3ea204)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar10 + 0x3ea204)" ( (binary_expression "pcVar10 + 0x3ea204" identifier + number_literal) )))) + number_literal) ))) ;) (ERROR "ppVar4 = (this_00->mips_mach_extensions_).\n             super__Vector_base<std::pair<unsigned_int,_unsigned_int>,_std::allocator<std::" (comma_expression "ppVar4 = (this_00->mips_mach_extensions_).\n             super__Vector_base<std::pair<unsigned_int,_unsigned_int>,_std" (binary_expression "ppVar4 = (this_00->mips_mach_extensions_).\n             super__Vector_base<std::pair<unsigned_int" (assignment_expression "ppVar4 = (this_00->mips_mach_extensions_).\n             super__Vector_base<std" identifier = (binary_expression "(this_00->mips_mach_extensions_).\n             super__Vector_base<std" (field_expression "(this_00->mips_mach_extensions_).\n             super__Vector_base" (parenthesized_expression "(this_00->mips_mach_extensions_)" ( (field_expression "this_00->mips_mach_extensions_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::pair" : : identifier) < identifier) , (binary_expression "_unsigned_int>,_std" identifier > (ERROR "," ,) identifier)) : : (binary_expression "allocator<std" identifier < identifier) : :) (expression_statement "pair<unsigned_int,_unsigned_int>_>_>\n             ._M_impl._M_start;" (comma_expression "pair<unsigned_int,_unsigned_int>_>_>\n             ._M_impl._M_start" (binary_expression "pair<unsigned_int" identifier < identifier) , (field_expression "_unsigned_int>_>_>\n             ._M_impl._M_start" (field_expression "_unsigned_int>_>_>\n             ._M_impl" (binary_expression "_unsigned_int>_>_" (binary_expression "_unsigned_int>_" identifier > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier)) ;) (if_statement "if (*(char *)&ppVar4[1].second == '\0') {\n      Target_mips<64,_false>::is_output_micromips(this_00);\n      if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {\n        this_00->got_ =\n             (Mips_output_data_got<64,_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                  ._M_impl._M_start);\n        *(undefined4 *)&this_00->field_0x10 = 0;\n        *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n        return;\n      }\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n                ((Mips_output_data_mips_stubs<64,_false> *)this_00);\n    }" if (parenthesized_expression "(*(char *)&ppVar4[1].second == '\0')" ( (binary_expression "*(char *)&ppVar4[1].second == '\0'" (pointer_expression "*(char *)&ppVar4[1].second" * (cast_expression "(char *)&ppVar4[1].second" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&ppVar4[1].second" & (field_expression "ppVar4[1].second" (subscript_expression "ppVar4[1]" identifier [ number_literal ]) . field_identifier)))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      Target_mips<64,_false>::is_output_micromips(this_00);\n      if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {\n        this_00->got_ =\n             (Mips_output_data_got<64,_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                  ._M_impl._M_start);\n        *(undefined4 *)&this_00->field_0x10 = 0;\n        *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n        return;\n      }\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n                ((Mips_output_data_mips_stubs<64,_false> *)this_00);\n    }" { (expression_statement "Target_mips<64,_false>::is_output_micromips(this_00);" (comma_expression "Target_mips<64,_false>::is_output_micromips(this_00)" (binary_expression "Target_mips<64" identifier < number_literal) , (binary_expression "_false>::is_output_micromips(this_00)" identifier > (ERROR "::" : :) (call_expression "is_output_micromips(this_00)" identifier (argument_list "(this_00)" ( identifier ))))) ;) (if_statement "if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {\n        this_00->got_ =\n             (Mips_output_data_got<64,_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                  ._M_impl._M_start);\n        *(undefined4 *)&this_00->field_0x10 = 0;\n        *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n        return;\n      }" if (parenthesized_expression "((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3))" ( (binary_expression "(-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)" (parenthesized_expression "(-1 < (int)this_00->got_plt_ << 1)" ( (binary_expression "-1 < (int)this_00->got_plt_ << 1" number_literal < (binary_expression "(int)this_00->got_plt_ << 1" (cast_expression "(int)this_00->got_plt_" ( (type_descriptor "int" primitive_type) ) (field_expression "this_00->got_plt_" identifier -> field_identifier)) << number_literal)) )) && (parenthesized_expression "(-1 < (int)this_00->got_plt_ << 3)" ( (binary_expression "-1 < (int)this_00->got_plt_ << 3" number_literal < (binary_expression "(int)this_00->got_plt_ << 3" (cast_expression "(int)this_00->got_plt_" ( (type_descriptor "int" primitive_type) ) (field_expression "this_00->got_plt_" identifier -> field_identifier)) << number_literal)) ))) )) (compound_statement "{\n        this_00->got_ =\n             (Mips_output_data_got<64,_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                  ._M_impl._M_start);\n        *(undefined4 *)&this_00->field_0x10 = 0;\n        *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n        return;\n      }" { (expression_statement "this_00->got_ =\n             (Mips_output_data_got<64,_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                  ._M_impl._M_start);" (assignment_expression "this_00->got_ =\n             (Mips_output_data_got<64,_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                  ._M_impl._M_start)" (field_expression "this_00->got_" identifier -> field_identifier) = (parenthesized_expression "(Mips_output_data_got<64,_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                  ._M_impl._M_start)" ( (comma_expression "Mips_output_data_got<64,_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)" (binary_expression "Mips_output_data_got<64" identifier < number_literal) , (binary_expression "_false> *)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)" identifier > (pointer_expression "*)\n             ((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)" * (ERROR ")" )) (parenthesized_expression "((int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)" ( (comma_expression "(int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std" (binary_expression "(int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)::Target_mips<64" (binary_expression "(int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base<(anonymous_namespace)" (binary_expression "(int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_ +\n             (int)(this_00->dyn_relocs_).\n                  super__Vector_base" (binary_expression "(int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_ +\n             (int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_" (cast_expression "(int)&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_" & (field_expression "((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)->sym_" (parenthesized_expression "((this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish)" ( (ERROR "(this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::" (comma_expression "(this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std" (binary_expression "(this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)::Target_mips<64" (binary_expression "(this_00->dyn_relocs_).\n                     super__Vector_base<(anonymous_namespace)" (field_expression "(this_00->dyn_relocs_).\n                     super__Vector_base" (parenthesized_expression "(this_00->dyn_relocs_)" ( (field_expression "this_00->dyn_relocs_" identifier -> field_identifier) )) . field_identifier) < (parenthesized_expression "(anonymous_namespace)" ( identifier ))) (ERROR "::Target_mips" : : identifier) < number_literal) , (comma_expression "_false>::Dyn_reloc,_std" (binary_expression "_false>::Dyn_reloc" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<(anonymous_namespace)" identifier < (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : :) (comma_expression "Target_mips<64,_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish" (binary_expression "Target_mips<64" identifier < number_literal) , (field_expression "_false>::Dyn_reloc>_>\n                     ._M_impl._M_finish" (field_expression "_false>::Dyn_reloc>_>\n                     ._M_impl" (binary_expression "_false>::Dyn_reloc>_" (binary_expression "_false>::Dyn_reloc" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier)) )) -> field_identifier))) + (cast_expression "(int)&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_" & (field_expression "((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)->sym_" (parenthesized_expression "((this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage)" ( (ERROR "(this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std::allocator<(anonymous_namespace)::" (comma_expression "(this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64,_false>::Dyn_reloc,_std" (binary_expression "(this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)::Target_mips<64" (binary_expression "(this_00->dyn_relocs_).\n                    super__Vector_base<(anonymous_namespace)" (field_expression "(this_00->dyn_relocs_).\n                    super__Vector_base" (parenthesized_expression "(this_00->dyn_relocs_)" ( (field_expression "this_00->dyn_relocs_" identifier -> field_identifier) )) . field_identifier) < (parenthesized_expression "(anonymous_namespace)" ( identifier ))) (ERROR "::Target_mips" : : identifier) < number_literal) , (comma_expression "_false>::Dyn_reloc,_std" (binary_expression "_false>::Dyn_reloc" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<(anonymous_namespace)" identifier < (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : :) (comma_expression "Target_mips<64,_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage" (binary_expression "Target_mips<64" identifier < number_literal) , (field_expression "_false>::Dyn_reloc>_>\n                    ._M_impl._M_end_of_storage" (field_expression "_false>::Dyn_reloc>_>\n                    ._M_impl" (binary_expression "_false>::Dyn_reloc>_" (binary_expression "_false>::Dyn_reloc" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier)) )) -> field_identifier)))) + (cast_expression "(int)(this_00->dyn_relocs_).\n                  super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "(this_00->dyn_relocs_).\n                  super__Vector_base" (parenthesized_expression "(this_00->dyn_relocs_)" ( (field_expression "this_00->dyn_relocs_" identifier -> field_identifier) )) . field_identifier))) < (parenthesized_expression "(anonymous_namespace)" ( identifier ))) (ERROR "::Target_mips" : : identifier) < number_literal) , (comma_expression "_false>::Dyn_reloc,_std" (binary_expression "_false>::Dyn_reloc" identifier > (ERROR "::" : :) identifier) , identifier)) (ERROR "::allocator<(anonymous_namespace" : : identifier < ( identifier) ))))) (ERROR "::Target_mips<64,_false>::Dyn_reloc>_>\n                  ._M_impl._M_start" : : identifier < number_literal , identifier > : : identifier > identifier > . identifier . identifier) ))) ;) (expression_statement "*(undefined4 *)&this_00->field_0x10 = 0;" (assignment_expression "*(undefined4 *)&this_00->field_0x10 = 0" (pointer_expression "*(undefined4 *)&this_00->field_0x10" * (cast_expression "(undefined4 *)&this_00->field_0x10" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->field_0x10" & (field_expression "this_00->field_0x10" identifier -> field_identifier)))) = number_literal) ;) (expression_statement "*(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;" (assignment_expression "*(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40" (pointer_expression "*(byte *)&this_00->got_plt_" * (cast_expression "(byte *)&this_00->got_plt_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->got_plt_" & (field_expression "this_00->got_plt_" identifier -> field_identifier)))) = (binary_expression "*(byte *)&this_00->got_plt_ & 0xbf | 0x40" (binary_expression "*(byte *)&this_00->got_plt_ & 0xbf" (pointer_expression "*(byte *)&this_00->got_plt_" * (cast_expression "(byte *)&this_00->got_plt_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->got_plt_" & (field_expression "this_00->got_plt_" identifier -> field_identifier)))) & number_literal) | number_literal)) ;) (return_statement "return;" return ;) })) comment (expression_statement "Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n                ((Mips_output_data_mips_stubs<64,_false> *)this_00);" (comma_expression "Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n                ((Mips_output_data_mips_stubs<64,_false> *)this_00)" (binary_expression "Mips_output_data_mips_stubs<64" identifier < number_literal) , (binary_expression "_false>::set_final_data_size\n                ((Mips_output_data_mips_stubs<64,_false> *)this_00)" identifier > (ERROR "::" : :) (call_expression "set_final_data_size\n                ((Mips_output_data_mips_stubs<64,_false> *)this_00)" identifier (argument_list "((Mips_output_data_mips_stubs<64,_false> *)this_00)" ( (parenthesized_expression "(Mips_output_data_mips_stubs<64,_false> *)this_00)" ( (comma_expression "Mips_output_data_mips_stubs<64,_false> *)this_00" (binary_expression "Mips_output_data_mips_stubs<64" identifier < number_literal) , (binary_expression "_false> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) )) ))))) ;) })) (expression_statement "iVar1 = 0x10;" (assignment_expression "iVar1 = 0x10" identifier = number_literal) ;) (if_statement "if ((int)(ppVar4[1].first << 6) < 0) {\n      if (*(char *)((int)&ppVar4[0x10].first + 2) != '\0') {\n        iVar1 = 0x14;\n      }\n    }\n    else {\n      iVar1 = 0x14;\n    }" if (parenthesized_expression "((int)(ppVar4[1].first << 6) < 0)" ( (binary_expression "(int)(ppVar4[1].first << 6) < 0" (cast_expression "(int)(ppVar4[1].first << 6)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(ppVar4[1].first << 6)" ( (binary_expression "ppVar4[1].first << 6" (field_expression "ppVar4[1].first" (subscript_expression "ppVar4[1]" identifier [ number_literal ]) . field_identifier) << number_literal) ))) < number_literal) )) (compound_statement "{\n      if (*(char *)((int)&ppVar4[0x10].first + 2) != '\0') {\n        iVar1 = 0x14;\n      }\n    }" { (if_statement "if (*(char *)((int)&ppVar4[0x10].first + 2) != '\0') {\n        iVar1 = 0x14;\n      }" if (parenthesized_expression "(*(char *)((int)&ppVar4[0x10].first + 2) != '\0')" ( (binary_expression "*(char *)((int)&ppVar4[0x10].first + 2) != '\0'" (pointer_expression "*(char *)((int)&ppVar4[0x10].first + 2)" * (cast_expression "(char *)((int)&ppVar4[0x10].first + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&ppVar4[0x10].first + 2)" ( (binary_expression "(int)&ppVar4[0x10].first + 2" (cast_expression "(int)&ppVar4[0x10].first" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&ppVar4[0x10].first" & (field_expression "ppVar4[0x10].first" (subscript_expression "ppVar4[0x10]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        iVar1 = 0x14;\n      }" { (expression_statement "iVar1 = 0x14;" (assignment_expression "iVar1 = 0x14" identifier = number_literal) ;) })) }) (else_clause "else {\n      iVar1 = 0x14;\n    }" else (compound_statement "{\n      iVar1 = 0x14;\n    }" { (expression_statement "iVar1 = 0x14;" (assignment_expression "iVar1 = 0x14" identifier = number_literal) ;) }))) (if_statement "if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {\n      this_00->got_ =\n           (Mips_output_data_got<64,_false> *)\n           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_);\n      *(undefined4 *)&this_00->field_0x10 = 0;\n      *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n      return;\n    }" if (parenthesized_expression "((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3))" ( (binary_expression "(-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)" (parenthesized_expression "(-1 < (int)this_00->got_plt_ << 1)" ( (binary_expression "-1 < (int)this_00->got_plt_ << 1" number_literal < (binary_expression "(int)this_00->got_plt_ << 1" (cast_expression "(int)this_00->got_plt_" ( (type_descriptor "int" primitive_type) ) (field_expression "this_00->got_plt_" identifier -> field_identifier)) << number_literal)) )) && (parenthesized_expression "(-1 < (int)this_00->got_plt_ << 3)" ( (binary_expression "-1 < (int)this_00->got_plt_ << 3" number_literal < (binary_expression "(int)this_00->got_plt_ << 3" (cast_expression "(int)this_00->got_plt_" ( (type_descriptor "int" primitive_type) ) (field_expression "this_00->got_plt_" identifier -> field_identifier)) << number_literal)) ))) )) (compound_statement "{\n      this_00->got_ =\n           (Mips_output_data_got<64,_false> *)\n           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_);\n      *(undefined4 *)&this_00->field_0x10 = 0;\n      *(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;\n      return;\n    }" { (expression_statement "this_00->got_ =\n           (Mips_output_data_got<64,_false> *)\n           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_);" (assignment_expression "this_00->got_ =\n           (Mips_output_data_got<64,_false> *)\n           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_)" (field_expression "this_00->got_" identifier -> field_identifier) = (parenthesized_expression "(Mips_output_data_got<64,_false> *)\n           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_)" ( (comma_expression "Mips_output_data_got<64,_false> *)\n           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_)" (binary_expression "Mips_output_data_got<64" identifier < number_literal) , (binary_expression "_false> *)\n           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_)" identifier > (pointer_expression "*)\n           (iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_)" * (ERROR ")" )) (parenthesized_expression "(iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_)" ( (comma_expression "iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,_false>.dynbss_" (binary_expression "iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs<9" (binary_expression "iVar1 * (int)(this_00->copy_relocs_).super_Copy_relocs" identifier * (cast_expression "(int)(this_00->copy_relocs_).super_Copy_relocs" ( (type_descriptor "int" primitive_type) ) (field_expression "(this_00->copy_relocs_).super_Copy_relocs" (parenthesized_expression "(this_00->copy_relocs_)" ( (field_expression "this_00->copy_relocs_" identifier -> field_identifier) )) . field_identifier))) < number_literal) , (comma_expression "_64,_false>.dynbss_" identifier , (field_expression "_false>.dynbss_" identifier (ERROR ">" >) . field_identifier))) ))))) ))) ;) (expression_statement "*(undefined4 *)&this_00->field_0x10 = 0;" (assignment_expression "*(undefined4 *)&this_00->field_0x10 = 0" (pointer_expression "*(undefined4 *)&this_00->field_0x10" * (cast_expression "(undefined4 *)&this_00->field_0x10" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->field_0x10" & (field_expression "this_00->field_0x10" identifier -> field_identifier)))) = number_literal) ;) (expression_statement "*(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40;" (assignment_expression "*(byte *)&this_00->got_plt_ = *(byte *)&this_00->got_plt_ & 0xbf | 0x40" (pointer_expression "*(byte *)&this_00->got_plt_" * (cast_expression "(byte *)&this_00->got_plt_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->got_plt_" & (field_expression "this_00->got_plt_" identifier -> field_identifier)))) = (binary_expression "*(byte *)&this_00->got_plt_ & 0xbf | 0x40" (binary_expression "*(byte *)&this_00->got_plt_ & 0xbf" (pointer_expression "*(byte *)&this_00->got_plt_" * (cast_expression "(byte *)&this_00->got_plt_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->got_plt_" & (field_expression "this_00->got_plt_" identifier -> field_identifier)))) & number_literal) | number_literal)) ;) (return_statement "return;" return ;) })) comment (expression_statement "Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n              ((Mips_output_data_mips_stubs<64,_false> *)this_00);" (comma_expression "Mips_output_data_mips_stubs<64,_false>::set_final_data_size\n              ((Mips_output_data_mips_stubs<64,_false> *)this_00)" (binary_expression "Mips_output_data_mips_stubs<64" identifier < number_literal) , (binary_expression "_false>::set_final_data_size\n              ((Mips_output_data_mips_stubs<64,_false> *)this_00)" identifier > (ERROR "::" : :) (call_expression "set_final_data_size\n              ((Mips_output_data_mips_stubs<64,_false> *)this_00)" identifier (argument_list "((Mips_output_data_mips_stubs<64,_false> *)this_00)" ( (parenthesized_expression "(Mips_output_data_mips_stubs<64,_false> *)this_00)" ( (comma_expression "Mips_output_data_mips_stubs<64,_false> *)this_00" (binary_expression "Mips_output_data_mips_stubs<64" identifier < number_literal) , (binary_expression "_false> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) )) ))))) ;) })) (return_statement "return;" return ;) (ERROR "}" }))
(translation_unit "int * FUN_000d74b0(int param_1,int param_2)\n\n{\n  int *piVar1;\n  int iVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined *puVar5;\n  code *pcVar6;\n  code *pcVar7;\n  \n  if (*(int *)(param_1 + 0x20) << 2 < 0) {\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }\n  puVar5 = PTR_do_gold_unreachable_004c1a30;\n  (*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);\n  pcVar6 = *(code **)(puVar5 + 0x3ea3cc);\n  iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;\n  (*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea398);\n  (*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);\n  pcVar6 = *(code **)(pcVar7 + 0x3ea338);\n  iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;\n  (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea304);\n  iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;\n  (*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }\n  return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n}\n\n" (function_definition "int * FUN_000d74b0(int param_1,int param_2)\n\n{\n  int *piVar1;\n  int iVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined *puVar5;\n  code *pcVar6;\n  code *pcVar7;\n  \n  if (*(int *)(param_1 + 0x20) << 2 < 0) {\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }\n  puVar5 = PTR_do_gold_unreachable_004c1a30;\n  (*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);\n  pcVar6 = *(code **)(puVar5 + 0x3ea3cc);\n  iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;\n  (*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea398);\n  (*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);\n  pcVar6 = *(code **)(pcVar7 + 0x3ea338);\n  iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;\n  (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea304);\n  iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;\n  (*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }\n  return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n}" primitive_type (pointer_declarator "* FUN_000d74b0(int param_1,int param_2)" * (function_declarator "FUN_000d74b0(int param_1,int param_2)" identifier (parameter_list "(int param_1,int param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "int param_2" primitive_type identifier) )))) (compound_statement "{\n  int *piVar1;\n  int iVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined *puVar5;\n  code *pcVar6;\n  code *pcVar7;\n  \n  if (*(int *)(param_1 + 0x20) << 2 < 0) {\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }\n  puVar5 = PTR_do_gold_unreachable_004c1a30;\n  (*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);\n  pcVar6 = *(code **)(puVar5 + 0x3ea3cc);\n  iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;\n  (*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea398);\n  (*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);\n  pcVar6 = *(code **)(pcVar7 + 0x3ea338);\n  iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;\n  (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea304);\n  iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;\n  (*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }\n  return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "code *pcVar6;" type_identifier (pointer_declarator "*pcVar6" * identifier) ;) (declaration "code *pcVar7;" type_identifier (pointer_declarator "*pcVar7" * identifier) ;) (if_statement "if (*(int *)(param_1 + 0x20) << 2 < 0) {\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x20) << 2 < 0)" ( (binary_expression "*(int *)(param_1 + 0x20) << 2 < 0" (binary_expression "*(int *)(param_1 + 0x20) << 2" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }" { (if_statement "if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x20) << 1 < 0)" ( (binary_expression "*(int *)(param_1 + 0x20) << 1 < 0" (binary_expression "*(int *)(param_1 + 0x20) << 1" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }" { (if_statement "if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }" if (parenthesized_expression "(-1 < *(int *)(param_1 + 0x18))" ( (binary_expression "-1 < *(int *)(param_1 + 0x18)" number_literal < (pointer_expression "*(int *)(param_1 + 0x18)" * (cast_expression "(int *)(param_1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }" { (expression_statement "uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c)" identifier = (binary_expression "*(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c)" (pointer_expression "*(uint *)(param_1 + 0x14)" * (cast_expression "(uint *)(param_1 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) )))))) ;) (expression_statement "iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);" (assignment_expression "iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18)" identifier = (binary_expression "(uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18)" (call_expression "(uint)(uVar4 < *(uint *)(param_1 + 0x14))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < *(uint *)(param_1 + 0x14))" ( (binary_expression "uVar4 < *(uint *)(param_1 + 0x14)" identifier < (pointer_expression "*(uint *)(param_1 + 0x14)" * (cast_expression "(uint *)(param_1 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) ))))) ))) + (pointer_expression "*(int *)(param_1 + 0x18)" * (cast_expression "(int *)(param_1 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) )))))) ;) (if_statement "if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }" if (parenthesized_expression "((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc)))))" ( (binary_expression "(iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))" (parenthesized_expression "(iVar2 <= *(int *)(param_2 + 8))" ( (binary_expression "iVar2 <= *(int *)(param_2 + 8)" identifier <= (pointer_expression "*(int *)(param_2 + 8)" * (cast_expression "(int *)(param_2 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) ))))) )) && (parenthesized_expression "((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))" ( (parenthesized_expression "(*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc)))" ( (binary_expression "*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))" (binary_expression "*(int *)(param_2 + 8) != iVar2" (pointer_expression "*(int *)(param_2 + 8)" * (cast_expression "(int *)(param_2 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) != identifier) || (parenthesized_expression "(uVar4 <= *(uint *)(param_2 + 0xc))" ( (binary_expression "uVar4 <= *(uint *)(param_2 + 0xc)" identifier <= (pointer_expression "*(uint *)(param_2 + 0xc)" * (cast_expression "(uint *)(param_2 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) ))))) ))) )) ))) )) (compound_statement "{\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }" { (expression_statement "uVar3 = *(uint *)(param_1 + 0x38);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x38)" identifier = (pointer_expression "*(uint *)(param_1 + 0x38)" * (cast_expression "(uint *)(param_1 + 0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x3c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x3c)" identifier = (pointer_expression "*(uint *)(param_1 + 0x3c)" * (cast_expression "(uint *)(param_1 + 0x3c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) ))))) ;) (expression_statement "piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));" (assignment_expression "piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c))" identifier = (cast_expression "(int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c))" ( (binary_expression "*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c)" (pointer_expression "*(int *)(param_2 + 0x10)" * (cast_expression "(int *)(param_2 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) )))) ;) (expression_statement "iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);" (assignment_expression "iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18)" identifier = (pointer_expression "*(int *)(*(int *)(param_1 + 0x30) + 0x18)" * (cast_expression "(int *)(*(int *)(param_1 + 0x30) + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x30) + 0x18)" ( (binary_expression "*(int *)(param_1 + 0x30) + 0x18" (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[1]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "*piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "*piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (pointer_expression "*piVar1" * identifier) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar3 = *(uint *)(param_1 + 0x40);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x40)" identifier = (pointer_expression "*(uint *)(param_1 + 0x40)" * (cast_expression "(uint *)(param_1 + 0x40)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x44);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x44)" identifier = (pointer_expression "*(uint *)(param_1 + 0x44)" * (cast_expression "(uint *)(param_1 + 0x44)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) ))))) ;) (expression_statement "piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[2]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[1]" identifier [ number_literal ]) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar3 = *(uint *)(param_1 + 0x48);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x48)" identifier = (pointer_expression "*(uint *)(param_1 + 0x48)" * (cast_expression "(uint *)(param_1 + 0x48)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x4c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x4c)" identifier = (pointer_expression "*(uint *)(param_1 + 0x4c)" * (cast_expression "(uint *)(param_1 + 0x4c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x4c)" ( (binary_expression "param_1 + 0x4c" identifier + number_literal) ))))) ;) (expression_statement "piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[3]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[2]" identifier [ number_literal ]) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar3 = *(uint *)(param_1 + 0x50);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x50)" identifier = (pointer_expression "*(uint *)(param_1 + 0x50)" * (cast_expression "(uint *)(param_1 + 0x50)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x54);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x54)" identifier = (pointer_expression "*(uint *)(param_1 + 0x54)" * (cast_expression "(uint *)(param_1 + 0x54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x54)" ( (binary_expression "param_1 + 0x54" identifier + number_literal) ))))) ;) (expression_statement "piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[4]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[3]" identifier [ number_literal ]) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x5c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x5c)" identifier = (pointer_expression "*(uint *)(param_1 + 0x5c)" * (cast_expression "(uint *)(param_1 + 0x5c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5c)" ( (binary_expression "param_1 + 0x5c" identifier + number_literal) ))))) ;) (expression_statement "uVar3 = *(uint *)(param_1 + 0x58);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x58)" identifier = (pointer_expression "*(uint *)(param_1 + 0x58)" * (cast_expression "(uint *)(param_1 + 0x58)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x58)" ( (binary_expression "param_1 + 0x58" identifier + number_literal) ))))) ;) (expression_statement "piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[4]" identifier [ number_literal ]) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[5]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (if_statement "if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }" { (expression_statement "piVar1[5] = 0;" (assignment_expression "piVar1[5] = 0" (subscript_expression "piVar1[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar1[6] = 0;" (assignment_expression "piVar1[6] = 0" (subscript_expression "piVar1[6]" identifier [ number_literal ]) = number_literal) ;) (return_statement "return piVar1;" return identifier ;) })) (expression_statement "uVar4 = *(uint *)(iVar2 + 0x30);" (assignment_expression "uVar4 = *(uint *)(iVar2 + 0x30)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x30)" * (cast_expression "(uint *)(iVar2 + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x30)" ( (binary_expression "iVar2 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "uVar3 = *(uint *)(iVar2 + 0x34);" (assignment_expression "uVar3 = *(uint *)(iVar2 + 0x34)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x34)" * (cast_expression "(uint *)(iVar2 + 0x34)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x34)" ( (binary_expression "iVar2 + 0x34" identifier + number_literal) ))))) ;) (expression_statement "piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[6]" identifier [ number_literal ]) = (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" ( (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" ( (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[5]" identifier [ number_literal ]) = (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" ( (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" ( (binary_expression "uVar3 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" ( (binary_expression "uVar3 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" ( (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" ( (binary_expression "uVar3 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (return_statement "return piVar1;" return identifier ;) })) })) (expression_statement "FUN_000d5cdc();" (call_expression "FUN_000d5cdc()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "(*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );" (call_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              )" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004c1a30" * (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              )" ( (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574" identifier + number_literal) , number_literal , (binary_expression "PTR_s__s_004c1a50 + -0x3350" identifier + number_literal) ))) ;) })) (expression_statement "puVar5 = PTR_do_gold_unreachable_004c1a30;" (assignment_expression "puVar5 = PTR_do_gold_unreachable_004c1a30" identifier = identifier) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);" (call_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004c1a30" * (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c)" ( (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574" identifier + number_literal) , number_literal , (binary_expression "PTR_s__s_004c1a50 + -0x3a3c" identifier + number_literal) ))) ;) (expression_statement "pcVar6 = *(code **)(puVar5 + 0x3ea3cc);" (assignment_expression "pcVar6 = *(code **)(puVar5 + 0x3ea3cc)" identifier = (pointer_expression "*(code **)(puVar5 + 0x3ea3cc)" * (cast_expression "(code **)(puVar5 + 0x3ea3cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x3ea3cc)" ( (binary_expression "puVar5 + 0x3ea3cc" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574" identifier = (binary_expression "*(int *)(puVar5 + 0x3e9c18) + 0x3574" (pointer_expression "*(int *)(puVar5 + 0x3e9c18)" * (cast_expression "(int *)(puVar5 + 0x3e9c18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x3e9c18)" ( (binary_expression "puVar5 + 0x3e9c18" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);" (call_expression "(*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478)" (parenthesized_expression "(*pcVar6)" ( (pointer_expression "*pcVar6" * identifier) )) (argument_list "(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478)" ( identifier , number_literal , (binary_expression "*(int *)(puVar5 + 0x3ea3ec) + -0x3478" (pointer_expression "*(int *)(puVar5 + 0x3ea3ec)" * (cast_expression "(int *)(puVar5 + 0x3ea3ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x3ea3ec)" ( (binary_expression "puVar5 + 0x3ea3ec" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" identifier = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == 0) {\n    return (int *)0x0;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    return (int *)0x0;\n  }" { (return_statement "return (int *)0x0;" return (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (if_statement "if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" if (parenthesized_expression "(*(int *)(iVar2 + 0x20) << 1 < 0)" ( (binary_expression "*(int *)(iVar2 + 0x20) << 1 < 0" (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" * (cast_expression "(int *)(iVar2 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" { (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 3);" return (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 3)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 3)" ( (binary_expression "*(uint *)(iVar2 + 0x14) >> 3" (pointer_expression "*(uint *)(iVar2 + 0x14)" * (cast_expression "(uint *)(iVar2 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) >> number_literal) ))) ;) })) (expression_statement "pcVar7 = *(code **)(pcVar6 + 0x3ea398);" (assignment_expression "pcVar7 = *(code **)(pcVar6 + 0x3ea398)" identifier = (pointer_expression "*(code **)(pcVar6 + 0x3ea398)" * (cast_expression "(code **)(pcVar6 + 0x3ea398)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar6 + 0x3ea398)" ( (binary_expression "pcVar6 + 0x3ea398" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);" (call_expression "(*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350)" (parenthesized_expression "(*pcVar7)" ( (pointer_expression "*pcVar7" * identifier) )) (argument_list "(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350)" ( (binary_expression "*(int *)(pcVar6 + 0x3e9be4) + 0x3574" (pointer_expression "*(int *)(pcVar6 + 0x3e9be4)" * (cast_expression "(int *)(pcVar6 + 0x3e9be4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3e9be4)" ( (binary_expression "pcVar6 + 0x3e9be4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar6 + 0x3ea3b8) + -0x3350" (pointer_expression "*(int *)(pcVar6 + 0x3ea3b8)" * (cast_expression "(int *)(pcVar6 + 0x3ea3b8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3ea3b8)" ( (binary_expression "pcVar6 + 0x3ea3b8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar6 = *(code **)(pcVar7 + 0x3ea338);" (assignment_expression "pcVar6 = *(code **)(pcVar7 + 0x3ea338)" identifier = (pointer_expression "*(code **)(pcVar7 + 0x3ea338)" * (cast_expression "(code **)(pcVar7 + 0x3ea338)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar7 + 0x3ea338)" ( (binary_expression "pcVar7 + 0x3ea338" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;" (assignment_expression "iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574" identifier = (binary_expression "*(int *)(pcVar7 + 0x3e9b84) + 0x3574" (pointer_expression "*(int *)(pcVar7 + 0x3e9b84)" * (cast_expression "(int *)(pcVar7 + 0x3e9b84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3e9b84)" ( (binary_expression "pcVar7 + 0x3e9b84" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);" (call_expression "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350)" (parenthesized_expression "(*pcVar6)" ( (pointer_expression "*pcVar6" * identifier) )) (argument_list "(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar7 + 0x3ea358) + -0x3350" (pointer_expression "*(int *)(pcVar7 + 0x3ea358)" * (cast_expression "(int *)(pcVar7 + 0x3ea358)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3ea358)" ( (binary_expression "pcVar7 + 0x3ea358" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" identifier = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == 0) {\n    return (int *)0x0;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    return (int *)0x0;\n  }" { (return_statement "return (int *)0x0;" return (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (if_statement "if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" if (parenthesized_expression "(*(int *)(iVar2 + 0x20) << 1 < 0)" ( (binary_expression "*(int *)(iVar2 + 0x20) << 1 < 0" (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" * (cast_expression "(int *)(iVar2 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) )))) << number_literal) < number_literal) )) (compound_statement "{\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" { (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 3);" return (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 3)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 3)" ( (binary_expression "*(uint *)(iVar2 + 0x14) >> 3" (pointer_expression "*(uint *)(iVar2 + 0x14)" * (cast_expression "(uint *)(iVar2 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) >> number_literal) ))) ;) })) (expression_statement "pcVar7 = *(code **)(pcVar6 + 0x3ea304);" (assignment_expression "pcVar7 = *(code **)(pcVar6 + 0x3ea304)" identifier = (pointer_expression "*(code **)(pcVar6 + 0x3ea304)" * (cast_expression "(code **)(pcVar6 + 0x3ea304)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar6 + 0x3ea304)" ( (binary_expression "pcVar6 + 0x3ea304" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;" (assignment_expression "iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574" identifier = (binary_expression "*(int *)(pcVar6 + 0x3e9b50) + 0x3574" (pointer_expression "*(int *)(pcVar6 + 0x3e9b50)" * (cast_expression "(int *)(pcVar6 + 0x3e9b50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3e9b50)" ( (binary_expression "pcVar6 + 0x3e9b50" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);" (call_expression "(*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350)" (parenthesized_expression "(*pcVar7)" ( (pointer_expression "*pcVar7" * identifier) )) (argument_list "(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar6 + 0x3ea324) + -0x3350" (pointer_expression "*(int *)(pcVar6 + 0x3ea324)" * (cast_expression "(int *)(pcVar6 + 0x3ea324)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3ea324)" ( (binary_expression "pcVar6 + 0x3ea324" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" identifier = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == 0) {\n    return (int *)0x0;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    return (int *)0x0;\n  }" { (return_statement "return (int *)0x0;" return (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (if_statement "if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }" if (parenthesized_expression "(-1 < *(int *)(iVar2 + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(iVar2 + 0x20) << 1" number_literal < (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" * (cast_expression "(int *)(iVar2 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) )))) << number_literal)) )) (compound_statement "{\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }" { (expression_statement "pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);" (assignment_expression "pcVar6 = *(code **)(pcVar7 + 0x3ea2a4)" identifier = (pointer_expression "*(code **)(pcVar7 + 0x3ea2a4)" * (cast_expression "(code **)(pcVar7 + 0x3ea2a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar7 + 0x3ea2a4)" ( (binary_expression "pcVar7 + 0x3ea2a4" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;" (assignment_expression "iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574" identifier = (binary_expression "*(int *)(pcVar7 + 0x3e9af0) + 0x3574" (pointer_expression "*(int *)(pcVar7 + 0x3e9af0)" * (cast_expression "(int *)(pcVar7 + 0x3e9af0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3e9af0)" ( (binary_expression "pcVar7 + 0x3e9af0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);" (call_expression "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350)" (parenthesized_expression "(*pcVar6)" ( (pointer_expression "*pcVar6" * identifier) )) (argument_list "(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar7 + 0x3ea2c4) + -0x3350" (pointer_expression "*(int *)(pcVar7 + 0x3ea2c4)" * (cast_expression "(int *)(pcVar7 + 0x3ea2c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3ea2c4)" ( (binary_expression "pcVar7 + 0x3ea2c4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" identifier = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == 0) {\n      return (int *)0x0;\n    }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n      return (int *)0x0;\n    }" { (return_statement "return (int *)0x0;" return (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (if_statement "if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }" if (parenthesized_expression "(-1 < *(int *)(iVar2 + 0x20) << 1)" ( (binary_expression "-1 < *(int *)(iVar2 + 0x20) << 1" number_literal < (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" * (cast_expression "(int *)(iVar2 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x20)" ( (binary_expression "iVar2 + 0x20" identifier + number_literal) )))) << number_literal)) )) (compound_statement "{\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }" { (expression_statement "pcVar7 = *(code **)(pcVar6 + 0x3ea244);" (assignment_expression "pcVar7 = *(code **)(pcVar6 + 0x3ea244)" identifier = (pointer_expression "*(code **)(pcVar6 + 0x3ea244)" * (cast_expression "(code **)(pcVar6 + 0x3ea244)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar6 + 0x3ea244)" ( (binary_expression "pcVar6 + 0x3ea244" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);" (call_expression "(*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350)" (parenthesized_expression "(*pcVar7)" ( (pointer_expression "*pcVar7" * identifier) )) (argument_list "(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350)" ( (binary_expression "*(int *)(pcVar6 + 0x3e9a90) + 0x3574" (pointer_expression "*(int *)(pcVar6 + 0x3e9a90)" * (cast_expression "(int *)(pcVar6 + 0x3e9a90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3e9a90)" ( (binary_expression "pcVar6 + 0x3e9a90" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar6 + 0x3ea264) + -0x3350" (pointer_expression "*(int *)(pcVar6 + 0x3ea264)" * (cast_expression "(int *)(pcVar6 + 0x3ea264)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar6 + 0x3ea264)" ( (binary_expression "pcVar6 + 0x3ea264" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);" (assignment_expression "piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" identifier = (cast_expression "(int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" (parenthesized_expression "(**(code **)(pcVar7 + 0x3ea1e4))" ( (pointer_expression "**(code **)(pcVar7 + 0x3ea1e4)" * (pointer_expression "*(code **)(pcVar7 + 0x3ea1e4)" * (cast_expression "(code **)(pcVar7 + 0x3ea1e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar7 + 0x3ea1e4)" ( (binary_expression "pcVar7 + 0x3ea1e4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" ( (binary_expression "*(int *)(pcVar7 + 0x3e9a30) + 0x3574" (pointer_expression "*(int *)(pcVar7 + 0x3e9a30)" * (cast_expression "(int *)(pcVar7 + 0x3e9a30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3e9a30)" ( (binary_expression "pcVar7 + 0x3e9a30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar7 + 0x3ea204) + -0x39fc" (pointer_expression "*(int *)(pcVar7 + 0x3ea204)" * (cast_expression "(int *)(pcVar7 + 0x3ea204)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 0x3ea204)" ( (binary_expression "pcVar7 + 0x3ea204" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return piVar1;" return identifier ;) })) (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 2);" return (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 2)" ( (binary_expression "*(uint *)(iVar2 + 0x14) >> 2" (pointer_expression "*(uint *)(iVar2 + 0x14)" * (cast_expression "(uint *)(iVar2 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) >> number_literal) ))) ;) })) (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 2);" return (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 2)" ( (binary_expression "*(uint *)(iVar2 + 0x14) >> 2" (pointer_expression "*(uint *)(iVar2 + 0x14)" * (cast_expression "(uint *)(iVar2 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) >> number_literal) ))) ;) })))
(translation_unit (function_definition TYPE (pointer_declarator * (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) )))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != IDENT) || (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (return_statement return IDENT ;) })) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT) < LIT) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) >> LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT) < LIT) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) >> LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (return_statement return IDENT ;) })) (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) >> LIT) ))) ;) })) (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) >> LIT) ))) ;) })))
(function_definition "int * FUN_000d74b0(int param_1,int param_2)\n\n{\n  int *piVar1;\n  int iVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined *puVar5;\n  code *pcVar6;\n  code *pcVar7;\n  \n  if (*(int *)(param_1 + 0x20) << 2 < 0) {\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }\n  puVar5 = PTR_do_gold_unreachable_004c1a30;\n  (*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);\n  pcVar6 = *(code **)(puVar5 + 0x3ea3cc);\n  iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;\n  (*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea398);\n  (*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);\n  pcVar6 = *(code **)(pcVar7 + 0x3ea338);\n  iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;\n  (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea304);\n  iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;\n  (*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }\n  return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n}" (primitive_type "int") (pointer_declarator "* FUN_000d74b0(int param_1,int param_2)" (* "*") (function_declarator "FUN_000d74b0(int param_1,int param_2)" (identifier "FUN_000d74b0") (parameter_list "(int param_1,int param_2)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) () ")")))) (compound_statement "{\n  int *piVar1;\n  int iVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined *puVar5;\n  code *pcVar6;\n  code *pcVar7;\n  \n  if (*(int *)(param_1 + 0x20) << 2 < 0) {\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }\n  puVar5 = PTR_do_gold_unreachable_004c1a30;\n  (*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);\n  pcVar6 = *(code **)(puVar5 + 0x3ea3cc);\n  iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;\n  (*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea398);\n  (*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);\n  pcVar6 = *(code **)(pcVar7 + 0x3ea338);\n  iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;\n  (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }\n  pcVar7 = *(code **)(pcVar6 + 0x3ea304);\n  iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;\n  (*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);\n  iVar2 = *(int *)(iVar2 + 0x14);\n  if (iVar2 == 0) {\n    return (int *)0x0;\n  }\n  if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }\n  return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n}" ({ "{") (declaration "int *piVar1;" (primitive_type "int") (pointer_declarator "*piVar1" (* "*") (identifier "piVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "uint uVar3;" (type_identifier "uint") (identifier "uVar3") (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "undefined *puVar5;" (type_identifier "undefined") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "code *pcVar6;" (type_identifier "code") (pointer_declarator "*pcVar6" (* "*") (identifier "pcVar6")) (; ";")) (declaration "code *pcVar7;" (type_identifier "code") (pointer_declarator "*pcVar7" (* "*") (identifier "pcVar7")) (; ";")) (if_statement "if (*(int *)(param_1 + 0x20) << 2 < 0) {\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x20) << 2 < 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x20) << 2 < 0" (binary_expression "*(int *)(param_1 + 0x20) << 2" (pointer_expression "*(int *)(param_1 + 0x20)" (* "*") (cast_expression "(int *)(param_1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "2")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n    if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }\n    (*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );\n  }" ({ "{") (if_statement "if (*(int *)(param_1 + 0x20) << 1 < 0) {\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x20) << 1 < 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x20) << 1 < 0" (binary_expression "*(int *)(param_1 + 0x20) << 1" (pointer_expression "*(int *)(param_1 + 0x20)" (* "*") (cast_expression "(int *)(param_1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "1")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n      if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }\n      FUN_000d5cdc();\n    }" ({ "{") (if_statement "if (-1 < *(int *)(param_1 + 0x18)) {\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }" (if "if") (parenthesized_expression "(-1 < *(int *)(param_1 + 0x18))" (( "(") (binary_expression "-1 < *(int *)(param_1 + 0x18)" (number_literal "-1") (< "<") (pointer_expression "*(int *)(param_1 + 0x18)" (* "*") (cast_expression "(int *)(param_1 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x18)" (( "(") (binary_expression "param_1 + 0x18" (identifier "param_1") (+ "+") (number_literal "0x18")) () ")"))))) () ")")) (compound_statement "{\n        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);\n        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);\n        if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }\n      }" ({ "{") (expression_statement "uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c)" (identifier "uVar4") (= "=") (binary_expression "*(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c)" (pointer_expression "*(uint *)(param_1 + 0x14)" (* "*") (cast_expression "(uint *)(param_1 + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x14)" (( "(") (binary_expression "param_1 + 0x14" (identifier "param_1") (+ "+") (number_literal "0x14")) () ")")))) (+ "+") (pointer_expression "*(int *)(param_1 + 0x1c)" (* "*") (cast_expression "(int *)(param_1 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1c)" (( "(") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c")) () ")")))))) (; ";")) (expression_statement "iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);" (assignment_expression "iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18)" (identifier "iVar2") (= "=") (binary_expression "(uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18)" (call_expression "(uint)(uVar4 < *(uint *)(param_1 + 0x14))" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar4 < *(uint *)(param_1 + 0x14))" (( "(") (binary_expression "uVar4 < *(uint *)(param_1 + 0x14)" (identifier "uVar4") (< "<") (pointer_expression "*(uint *)(param_1 + 0x14)" (* "*") (cast_expression "(uint *)(param_1 + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x14)" (( "(") (binary_expression "param_1 + 0x14" (identifier "param_1") (+ "+") (number_literal "0x14")) () ")"))))) () ")"))) (+ "+") (pointer_expression "*(int *)(param_1 + 0x18)" (* "*") (cast_expression "(int *)(param_1 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x18)" (( "(") (binary_expression "param_1 + 0x18" (identifier "param_1") (+ "+") (number_literal "0x18")) () ")")))))) (; ";")) (if_statement "if ((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }" (if "if") (parenthesized_expression "((iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc)))))" (( "(") (binary_expression "(iVar2 <= *(int *)(param_2 + 8)) &&\n           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))" (parenthesized_expression "(iVar2 <= *(int *)(param_2 + 8))" (( "(") (binary_expression "iVar2 <= *(int *)(param_2 + 8)" (identifier "iVar2") (<= "<=") (pointer_expression "*(int *)(param_2 + 8)" (* "*") (cast_expression "(int *)(param_2 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")"))))) () ")")) (&& "&&") (parenthesized_expression "((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))" (( "(") (parenthesized_expression "(*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc)))" (( "(") (binary_expression "*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))" (binary_expression "*(int *)(param_2 + 8) != iVar2" (pointer_expression "*(int *)(param_2 + 8)" (* "*") (cast_expression "(int *)(param_2 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (!= "!=") (identifier "iVar2")) (|| "||") (parenthesized_expression "(uVar4 <= *(uint *)(param_2 + 0xc))" (( "(") (binary_expression "uVar4 <= *(uint *)(param_2 + 0xc)" (identifier "uVar4") (<= "<=") (pointer_expression "*(uint *)(param_2 + 0xc)" (* "*") (cast_expression "(uint *)(param_2 + 0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0xc)" (( "(") (binary_expression "param_2 + 0xc" (identifier "param_2") (+ "+") (number_literal "0xc")) () ")"))))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n          uVar3 = *(uint *)(param_1 + 0x38);\n          uVar4 = *(uint *)(param_1 + 0x3c);\n          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));\n          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);\n          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x40);\n          uVar4 = *(uint *)(param_1 + 0x44);\n          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x48);\n          uVar4 = *(uint *)(param_1 + 0x4c);\n          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar3 = *(uint *)(param_1 + 0x50);\n          uVar4 = *(uint *)(param_1 + 0x54);\n          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          uVar4 = *(uint *)(param_1 + 0x5c);\n          uVar3 = *(uint *)(param_1 + 0x58);\n          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }\n          uVar4 = *(uint *)(iVar2 + 0x30);\n          uVar3 = *(uint *)(iVar2 + 0x34);\n          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;\n          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;\n          return piVar1;\n        }" ({ "{") (expression_statement "uVar3 = *(uint *)(param_1 + 0x38);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x38)" (identifier "uVar3") (= "=") (pointer_expression "*(uint *)(param_1 + 0x38)" (* "*") (cast_expression "(uint *)(param_1 + 0x38)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x38)" (( "(") (binary_expression "param_1 + 0x38" (identifier "param_1") (+ "+") (number_literal "0x38")) () ")"))))) (; ";")) (expression_statement "uVar4 = *(uint *)(param_1 + 0x3c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x3c)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(param_1 + 0x3c)" (* "*") (cast_expression "(uint *)(param_1 + 0x3c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3c)" (( "(") (binary_expression "param_1 + 0x3c" (identifier "param_1") (+ "+") (number_literal "0x3c")) () ")"))))) (; ";")) (expression_statement "piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));" (assignment_expression "piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c))" (identifier "piVar1") (= "=") (cast_expression "(int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c))" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c))" (( "(") (binary_expression "*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c)" (pointer_expression "*(int *)(param_2 + 0x10)" (* "*") (cast_expression "(int *)(param_2 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x10)" (( "(") (binary_expression "param_2 + 0x10" (identifier "param_2") (+ "+") (number_literal "0x10")) () ")")))) (+ "+") (pointer_expression "*(int *)(param_1 + 0x1c)" (* "*") (cast_expression "(int *)(param_1 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1c)" (( "(") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c")) () ")"))))) () ")")))) (; ";")) (expression_statement "iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);" (assignment_expression "iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(*(int *)(param_1 + 0x30) + 0x18)" (* "*") (cast_expression "(int *)(*(int *)(param_1 + 0x30) + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_1 + 0x30) + 0x18)" (( "(") (binary_expression "*(int *)(param_1 + 0x30) + 0x18" (pointer_expression "*(int *)(param_1 + 0x30)" (* "*") (cast_expression "(int *)(param_1 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")")))) (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[1]" (identifier "piVar1") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" (( "(") (binary_expression "uVar3 >> 0x10" (identifier "uVar3") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" (( "(") (binary_expression "uVar3 >> 0x18" (identifier "uVar3") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" (( "(") (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" (( "(") (binary_expression "uVar3 & 0xff" (identifier "uVar3") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" (identifier "uVar3") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "*piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "*piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (pointer_expression "*piVar1" (* "*") (identifier "piVar1")) (= "=") (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" (( "(") (binary_expression "uVar4 >> 0x10" (identifier "uVar4") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" (( "(") (binary_expression "uVar4 >> 0x18" (identifier "uVar4") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" (( "(") (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" (( "(") (binary_expression "uVar4 & 0xff" (identifier "uVar4") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" (identifier "uVar4") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "uVar3 = *(uint *)(param_1 + 0x40);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x40)" (identifier "uVar3") (= "=") (pointer_expression "*(uint *)(param_1 + 0x40)" (* "*") (cast_expression "(uint *)(param_1 + 0x40)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x40)" (( "(") (binary_expression "param_1 + 0x40" (identifier "param_1") (+ "+") (number_literal "0x40")) () ")"))))) (; ";")) (expression_statement "uVar4 = *(uint *)(param_1 + 0x44);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x44)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(param_1 + 0x44)" (* "*") (cast_expression "(uint *)(param_1 + 0x44)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x44)" (( "(") (binary_expression "param_1 + 0x44" (identifier "param_1") (+ "+") (number_literal "0x44")) () ")"))))) (; ";")) (expression_statement "piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[2]" (identifier "piVar1") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" (( "(") (binary_expression "uVar3 >> 0x10" (identifier "uVar3") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" (( "(") (binary_expression "uVar3 >> 0x18" (identifier "uVar3") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" (( "(") (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" (( "(") (binary_expression "uVar3 & 0xff" (identifier "uVar3") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" (identifier "uVar3") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[1]" (identifier "piVar1") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" (( "(") (binary_expression "uVar4 >> 0x10" (identifier "uVar4") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" (( "(") (binary_expression "uVar4 >> 0x18" (identifier "uVar4") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" (( "(") (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" (( "(") (binary_expression "uVar4 & 0xff" (identifier "uVar4") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" (identifier "uVar4") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "uVar3 = *(uint *)(param_1 + 0x48);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x48)" (identifier "uVar3") (= "=") (pointer_expression "*(uint *)(param_1 + 0x48)" (* "*") (cast_expression "(uint *)(param_1 + 0x48)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x48)" (( "(") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48")) () ")"))))) (; ";")) (expression_statement "uVar4 = *(uint *)(param_1 + 0x4c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x4c)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(param_1 + 0x4c)" (* "*") (cast_expression "(uint *)(param_1 + 0x4c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x4c)" (( "(") (binary_expression "param_1 + 0x4c" (identifier "param_1") (+ "+") (number_literal "0x4c")) () ")"))))) (; ";")) (expression_statement "piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[3]" (identifier "piVar1") ([ "[") (number_literal "3") (] "]")) (= "=") (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" (( "(") (binary_expression "uVar3 >> 0x10" (identifier "uVar3") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" (( "(") (binary_expression "uVar3 >> 0x18" (identifier "uVar3") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" (( "(") (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" (( "(") (binary_expression "uVar3 & 0xff" (identifier "uVar3") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" (identifier "uVar3") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[2]" (identifier "piVar1") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" (( "(") (binary_expression "uVar4 >> 0x10" (identifier "uVar4") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" (( "(") (binary_expression "uVar4 >> 0x18" (identifier "uVar4") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" (( "(") (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" (( "(") (binary_expression "uVar4 & 0xff" (identifier "uVar4") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" (identifier "uVar4") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "uVar3 = *(uint *)(param_1 + 0x50);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x50)" (identifier "uVar3") (= "=") (pointer_expression "*(uint *)(param_1 + 0x50)" (* "*") (cast_expression "(uint *)(param_1 + 0x50)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x50)" (( "(") (binary_expression "param_1 + 0x50" (identifier "param_1") (+ "+") (number_literal "0x50")) () ")"))))) (; ";")) (expression_statement "uVar4 = *(uint *)(param_1 + 0x54);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x54)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(param_1 + 0x54)" (* "*") (cast_expression "(uint *)(param_1 + 0x54)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x54)" (( "(") (binary_expression "param_1 + 0x54" (identifier "param_1") (+ "+") (number_literal "0x54")) () ")"))))) (; ";")) (expression_statement "piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[4]" (identifier "piVar1") ([ "[") (number_literal "4") (] "]")) (= "=") (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" (( "(") (binary_expression "uVar3 >> 0x10" (identifier "uVar3") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" (( "(") (binary_expression "uVar3 >> 0x18" (identifier "uVar3") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" (( "(") (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" (( "(") (binary_expression "uVar3 & 0xff" (identifier "uVar3") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" (identifier "uVar3") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[3]" (identifier "piVar1") ([ "[") (number_literal "3") (] "]")) (= "=") (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" (( "(") (binary_expression "uVar4 >> 0x10" (identifier "uVar4") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" (( "(") (binary_expression "uVar4 >> 0x18" (identifier "uVar4") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" (( "(") (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" (( "(") (binary_expression "uVar4 & 0xff" (identifier "uVar4") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" (identifier "uVar4") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "uVar4 = *(uint *)(param_1 + 0x5c);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x5c)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(param_1 + 0x5c)" (* "*") (cast_expression "(uint *)(param_1 + 0x5c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5c)" (( "(") (binary_expression "param_1 + 0x5c" (identifier "param_1") (+ "+") (number_literal "0x5c")) () ")"))))) (; ";")) (expression_statement "uVar3 = *(uint *)(param_1 + 0x58);" (assignment_expression "uVar3 = *(uint *)(param_1 + 0x58)" (identifier "uVar3") (= "=") (pointer_expression "*(uint *)(param_1 + 0x58)" (* "*") (cast_expression "(uint *)(param_1 + 0x58)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x58)" (( "(") (binary_expression "param_1 + 0x58" (identifier "param_1") (+ "+") (number_literal "0x58")) () ")"))))) (; ";")) (expression_statement "piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[4]" (identifier "piVar1") ([ "[") (number_literal "4") (] "]")) (= "=") (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" (( "(") (binary_expression "uVar4 >> 0x10" (identifier "uVar4") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" (( "(") (binary_expression "uVar4 >> 0x18" (identifier "uVar4") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" (( "(") (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" (( "(") (binary_expression "uVar4 & 0xff" (identifier "uVar4") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" (identifier "uVar4") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[5]" (identifier "piVar1") ([ "[") (number_literal "5") (] "]")) (= "=") (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" (( "(") (binary_expression "uVar3 >> 0x10" (identifier "uVar3") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" (( "(") (binary_expression "uVar3 >> 0x18" (identifier "uVar3") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" (( "(") (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" (( "(") (binary_expression "uVar3 & 0xff" (identifier "uVar3") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" (identifier "uVar3") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (if_statement "if (iVar2 == 0) {\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            piVar1[5] = 0;\n            piVar1[6] = 0;\n            return piVar1;\n          }" ({ "{") (expression_statement "piVar1[5] = 0;" (assignment_expression "piVar1[5] = 0" (subscript_expression "piVar1[5]" (identifier "piVar1") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar1[6] = 0;" (assignment_expression "piVar1[6] = 0" (subscript_expression "piVar1[6]" (identifier "piVar1") ([ "[") (number_literal "6") (] "]")) (= "=") (number_literal "0")) (; ";")) (return_statement "return piVar1;" (return "return") (identifier "piVar1") (; ";")) (} "}"))) (expression_statement "uVar4 = *(uint *)(iVar2 + 0x30);" (assignment_expression "uVar4 = *(uint *)(iVar2 + 0x30)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x30)" (* "*") (cast_expression "(uint *)(iVar2 + 0x30)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x30)" (( "(") (binary_expression "iVar2 + 0x30" (identifier "iVar2") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (expression_statement "uVar3 = *(uint *)(iVar2 + 0x34);" (assignment_expression "uVar3 = *(uint *)(iVar2 + 0x34)" (identifier "uVar3") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x34)" (* "*") (cast_expression "(uint *)(iVar2 + 0x34)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x34)" (( "(") (binary_expression "iVar2 + 0x34" (identifier "iVar2") (+ "+") (number_literal "0x34")) () ")"))))) (; ";")) (expression_statement "piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[6]" (identifier "piVar1") ([ "[") (number_literal "6") (] "]")) (= "=") (binary_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10" (binary_expression "(uVar4 >> 0x10) << 0x18" (parenthesized_expression "(uVar4 >> 0x10)" (( "(") (binary_expression "uVar4 >> 0x10" (identifier "uVar4") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar4 >> 0x18) << 0x10" (parenthesized_expression "(uVar4 >> 0x18)" (( "(") (binary_expression "uVar4 >> 0x18" (identifier "uVar4") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff)" (( "(") (binary_expression "(uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff" (binary_expression "(uVar4 & 0xff) << 8" (parenthesized_expression "(uVar4 & 0xff)" (( "(") (binary_expression "uVar4 & 0xff" (identifier "uVar4") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" (identifier "uVar4") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;" (assignment_expression "piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (subscript_expression "piVar1[5]" (identifier "piVar1") ([ "[") (number_literal "5") (] "]")) (= "=") (binary_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +\n                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10" (binary_expression "(uVar3 >> 0x10) << 0x18" (parenthesized_expression "(uVar3 >> 0x10)" (( "(") (binary_expression "uVar3 >> 0x10" (identifier "uVar3") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar3 >> 0x18) << 0x10" (parenthesized_expression "(uVar3 >> 0x18)" (( "(") (binary_expression "uVar3 >> 0x18" (identifier "uVar3") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff)" (( "(") (binary_expression "(uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff" (binary_expression "(uVar3 & 0xff) << 8" (parenthesized_expression "(uVar3 & 0xff)" (( "(") (binary_expression "uVar3 & 0xff" (identifier "uVar3") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" (identifier "uVar3") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (return_statement "return piVar1;" (return "return") (identifier "piVar1") (; ";")) (} "}"))) (} "}"))) (expression_statement "FUN_000d5cdc();" (call_expression "FUN_000d5cdc()" (identifier "FUN_000d5cdc") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              );" (call_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)\n              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              )" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)" (( "(") (pointer_expression "*(code *)PTR_do_gold_unreachable_004c1a30" (* "*") (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_do_gold_unreachable_004c1a30"))) () ")")) (argument_list "(PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350\n              )" (( "(") (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574" (identifier "PTR_s_ral_options14Struct_no_crefE_004c127c") (+ "+") (number_literal "0x3574")) (, ",") (number_literal "0xcf") (, ",") (binary_expression "PTR_s__s_004c1a50 + -0x3350" (identifier "PTR_s__s_004c1a50") (+ "+") (number_literal "-0x3350")) () ")"))) (; ";")) (} "}"))) (expression_statement "puVar5 = PTR_do_gold_unreachable_004c1a30;" (assignment_expression "puVar5 = PTR_do_gold_unreachable_004c1a30" (identifier "puVar5") (= "=") (identifier "PTR_do_gold_unreachable_004c1a30")) (; ";")) (expression_statement "(*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);" (call_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)\n            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)" (( "(") (pointer_expression "*(code *)PTR_do_gold_unreachable_004c1a30" (* "*") (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_do_gold_unreachable_004c1a30"))) () ")")) (argument_list "(PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c)" (( "(") (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574" (identifier "PTR_s_ral_options14Struct_no_crefE_004c127c") (+ "+") (number_literal "0x3574")) (, ",") (number_literal "0xe3") (, ",") (binary_expression "PTR_s__s_004c1a50 + -0x3a3c" (identifier "PTR_s__s_004c1a50") (+ "+") (number_literal "-0x3a3c")) () ")"))) (; ";")) (expression_statement "pcVar6 = *(code **)(puVar5 + 0x3ea3cc);" (assignment_expression "pcVar6 = *(code **)(puVar5 + 0x3ea3cc)" (identifier "pcVar6") (= "=") (pointer_expression "*(code **)(puVar5 + 0x3ea3cc)" (* "*") (cast_expression "(code **)(puVar5 + 0x3ea3cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x3ea3cc)" (( "(") (binary_expression "puVar5 + 0x3ea3cc" (identifier "puVar5") (+ "+") (number_literal "0x3ea3cc")) () ")"))))) (; ";")) (expression_statement "iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574" (identifier "iVar2") (= "=") (binary_expression "*(int *)(puVar5 + 0x3e9c18) + 0x3574" (pointer_expression "*(int *)(puVar5 + 0x3e9c18)" (* "*") (cast_expression "(int *)(puVar5 + 0x3e9c18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x3e9c18)" (( "(") (binary_expression "puVar5 + 0x3e9c18" (identifier "puVar5") (+ "+") (number_literal "0x3e9c18")) () ")")))) (+ "+") (number_literal "0x3574"))) (; ";")) (expression_statement "(*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);" (call_expression "(*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478)" (parenthesized_expression "(*pcVar6)" (( "(") (pointer_expression "*pcVar6" (* "*") (identifier "pcVar6")) () ")")) (argument_list "(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478)" (( "(") (identifier "iVar2") (, ",") (number_literal "0xc5") (, ",") (binary_expression "*(int *)(puVar5 + 0x3ea3ec) + -0x3478" (pointer_expression "*(int *)(puVar5 + 0x3ea3ec)" (* "*") (cast_expression "(int *)(puVar5 + 0x3ea3ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x3ea3ec)" (( "(") (binary_expression "puVar5 + 0x3ea3ec" (identifier "puVar5") (+ "+") (number_literal "0x3ea3ec")) () ")")))) (+ "+") (number_literal "-0x3478")) () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(iVar2 + 0x14)" (* "*") (cast_expression "(int *)(iVar2 + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x14)" (( "(") (binary_expression "iVar2 + 0x14" (identifier "iVar2") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (if_statement "if (iVar2 == 0) {\n    return (int *)0x0;\n  }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return (int *)0x0;\n  }" ({ "{") (return_statement "return (int *)0x0;" (return "return") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + 0x20) << 1 < 0)" (( "(") (binary_expression "*(int *)(iVar2 + 0x20) << 1 < 0" (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" (* "*") (cast_expression "(int *)(iVar2 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x20)" (( "(") (binary_expression "iVar2 + 0x20" (identifier "iVar2") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "1")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" ({ "{") (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 3);" (return "return") (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 3)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 3)" (( "(") (binary_expression "*(uint *)(iVar2 + 0x14) >> 3" (pointer_expression "*(uint *)(iVar2 + 0x14)" (* "*") (cast_expression "(uint *)(iVar2 + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x14)" (( "(") (binary_expression "iVar2 + 0x14" (identifier "iVar2") (+ "+") (number_literal "0x14")) () ")")))) (>> ">>") (number_literal "3")) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar7 = *(code **)(pcVar6 + 0x3ea398);" (assignment_expression "pcVar7 = *(code **)(pcVar6 + 0x3ea398)" (identifier "pcVar7") (= "=") (pointer_expression "*(code **)(pcVar6 + 0x3ea398)" (* "*") (cast_expression "(code **)(pcVar6 + 0x3ea398)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar6 + 0x3ea398)" (( "(") (binary_expression "pcVar6 + 0x3ea398" (identifier "pcVar6") (+ "+") (number_literal "0x3ea398")) () ")"))))) (; ";")) (expression_statement "(*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);" (call_expression "(*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350)" (parenthesized_expression "(*pcVar7)" (( "(") (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) () ")")) (argument_list "(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350)" (( "(") (binary_expression "*(int *)(pcVar6 + 0x3e9be4) + 0x3574" (pointer_expression "*(int *)(pcVar6 + 0x3e9be4)" (* "*") (cast_expression "(int *)(pcVar6 + 0x3e9be4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar6 + 0x3e9be4)" (( "(") (binary_expression "pcVar6 + 0x3e9be4" (identifier "pcVar6") (+ "+") (number_literal "0x3e9be4")) () ")")))) (+ "+") (number_literal "0x3574")) (, ",") (number_literal "0xcf") (, ",") (binary_expression "*(int *)(pcVar6 + 0x3ea3b8) + -0x3350" (pointer_expression "*(int *)(pcVar6 + 0x3ea3b8)" (* "*") (cast_expression "(int *)(pcVar6 + 0x3ea3b8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar6 + 0x3ea3b8)" (( "(") (binary_expression "pcVar6 + 0x3ea3b8" (identifier "pcVar6") (+ "+") (number_literal "0x3ea3b8")) () ")")))) (+ "+") (number_literal "-0x3350")) () ")"))) (; ";")) (expression_statement "pcVar6 = *(code **)(pcVar7 + 0x3ea338);" (assignment_expression "pcVar6 = *(code **)(pcVar7 + 0x3ea338)" (identifier "pcVar6") (= "=") (pointer_expression "*(code **)(pcVar7 + 0x3ea338)" (* "*") (cast_expression "(code **)(pcVar7 + 0x3ea338)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar7 + 0x3ea338)" (( "(") (binary_expression "pcVar7 + 0x3ea338" (identifier "pcVar7") (+ "+") (number_literal "0x3ea338")) () ")"))))) (; ";")) (expression_statement "iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;" (assignment_expression "iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574" (identifier "iVar2") (= "=") (binary_expression "*(int *)(pcVar7 + 0x3e9b84) + 0x3574" (pointer_expression "*(int *)(pcVar7 + 0x3e9b84)" (* "*") (cast_expression "(int *)(pcVar7 + 0x3e9b84)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar7 + 0x3e9b84)" (( "(") (binary_expression "pcVar7 + 0x3e9b84" (identifier "pcVar7") (+ "+") (number_literal "0x3e9b84")) () ")")))) (+ "+") (number_literal "0x3574"))) (; ";")) (expression_statement "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);" (call_expression "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350)" (parenthesized_expression "(*pcVar6)" (( "(") (pointer_expression "*pcVar6" (* "*") (identifier "pcVar6")) () ")")) (argument_list "(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350)" (( "(") (identifier "iVar2") (, ",") (number_literal "0xcf") (, ",") (binary_expression "*(int *)(pcVar7 + 0x3ea358) + -0x3350" (pointer_expression "*(int *)(pcVar7 + 0x3ea358)" (* "*") (cast_expression "(int *)(pcVar7 + 0x3ea358)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar7 + 0x3ea358)" (( "(") (binary_expression "pcVar7 + 0x3ea358" (identifier "pcVar7") (+ "+") (number_literal "0x3ea358")) () ")")))) (+ "+") (number_literal "-0x3350")) () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(iVar2 + 0x14)" (* "*") (cast_expression "(int *)(iVar2 + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x14)" (( "(") (binary_expression "iVar2 + 0x14" (identifier "iVar2") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (if_statement "if (iVar2 == 0) {\n    return (int *)0x0;\n  }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return (int *)0x0;\n  }" ({ "{") (return_statement "return (int *)0x0;" (return "return") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar2 + 0x20) << 1 < 0) {\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + 0x20) << 1 < 0)" (( "(") (binary_expression "*(int *)(iVar2 + 0x20) << 1 < 0" (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" (* "*") (cast_expression "(int *)(iVar2 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x20)" (( "(") (binary_expression "iVar2 + 0x20" (identifier "iVar2") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "1")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);\n  }" ({ "{") (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 3);" (return "return") (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 3)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 3)" (( "(") (binary_expression "*(uint *)(iVar2 + 0x14) >> 3" (pointer_expression "*(uint *)(iVar2 + 0x14)" (* "*") (cast_expression "(uint *)(iVar2 + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x14)" (( "(") (binary_expression "iVar2 + 0x14" (identifier "iVar2") (+ "+") (number_literal "0x14")) () ")")))) (>> ">>") (number_literal "3")) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar7 = *(code **)(pcVar6 + 0x3ea304);" (assignment_expression "pcVar7 = *(code **)(pcVar6 + 0x3ea304)" (identifier "pcVar7") (= "=") (pointer_expression "*(code **)(pcVar6 + 0x3ea304)" (* "*") (cast_expression "(code **)(pcVar6 + 0x3ea304)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar6 + 0x3ea304)" (( "(") (binary_expression "pcVar6 + 0x3ea304" (identifier "pcVar6") (+ "+") (number_literal "0x3ea304")) () ")"))))) (; ";")) (expression_statement "iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;" (assignment_expression "iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574" (identifier "iVar2") (= "=") (binary_expression "*(int *)(pcVar6 + 0x3e9b50) + 0x3574" (pointer_expression "*(int *)(pcVar6 + 0x3e9b50)" (* "*") (cast_expression "(int *)(pcVar6 + 0x3e9b50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar6 + 0x3e9b50)" (( "(") (binary_expression "pcVar6 + 0x3e9b50" (identifier "pcVar6") (+ "+") (number_literal "0x3e9b50")) () ")")))) (+ "+") (number_literal "0x3574"))) (; ";")) (expression_statement "(*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);" (call_expression "(*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350)" (parenthesized_expression "(*pcVar7)" (( "(") (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) () ")")) (argument_list "(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350)" (( "(") (identifier "iVar2") (, ",") (number_literal "0xcf") (, ",") (binary_expression "*(int *)(pcVar6 + 0x3ea324) + -0x3350" (pointer_expression "*(int *)(pcVar6 + 0x3ea324)" (* "*") (cast_expression "(int *)(pcVar6 + 0x3ea324)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar6 + 0x3ea324)" (( "(") (binary_expression "pcVar6 + 0x3ea324" (identifier "pcVar6") (+ "+") (number_literal "0x3ea324")) () ")")))) (+ "+") (number_literal "-0x3350")) () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(iVar2 + 0x14)" (* "*") (cast_expression "(int *)(iVar2 + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x14)" (( "(") (binary_expression "iVar2 + 0x14" (identifier "iVar2") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (if_statement "if (iVar2 == 0) {\n    return (int *)0x0;\n  }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return (int *)0x0;\n  }" ({ "{") (return_statement "return (int *)0x0;" (return "return") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (; ";")) (} "}"))) (if_statement "if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }" (if "if") (parenthesized_expression "(-1 < *(int *)(iVar2 + 0x20) << 1)" (( "(") (binary_expression "-1 < *(int *)(iVar2 + 0x20) << 1" (number_literal "-1") (< "<") (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" (* "*") (cast_expression "(int *)(iVar2 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x20)" (( "(") (binary_expression "iVar2 + 0x20" (identifier "iVar2") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "1"))) () ")")) (compound_statement "{\n    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);\n    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;\n    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);\n    iVar2 = *(int *)(iVar2 + 0x14);\n    if (iVar2 == 0) {\n      return (int *)0x0;\n    }\n    if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }\n    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);\n  }" ({ "{") (expression_statement "pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);" (assignment_expression "pcVar6 = *(code **)(pcVar7 + 0x3ea2a4)" (identifier "pcVar6") (= "=") (pointer_expression "*(code **)(pcVar7 + 0x3ea2a4)" (* "*") (cast_expression "(code **)(pcVar7 + 0x3ea2a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar7 + 0x3ea2a4)" (( "(") (binary_expression "pcVar7 + 0x3ea2a4" (identifier "pcVar7") (+ "+") (number_literal "0x3ea2a4")) () ")"))))) (; ";")) (expression_statement "iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;" (assignment_expression "iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574" (identifier "iVar2") (= "=") (binary_expression "*(int *)(pcVar7 + 0x3e9af0) + 0x3574" (pointer_expression "*(int *)(pcVar7 + 0x3e9af0)" (* "*") (cast_expression "(int *)(pcVar7 + 0x3e9af0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar7 + 0x3e9af0)" (( "(") (binary_expression "pcVar7 + 0x3e9af0" (identifier "pcVar7") (+ "+") (number_literal "0x3e9af0")) () ")")))) (+ "+") (number_literal "0x3574"))) (; ";")) (expression_statement "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);" (call_expression "(*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350)" (parenthesized_expression "(*pcVar6)" (( "(") (pointer_expression "*pcVar6" (* "*") (identifier "pcVar6")) () ")")) (argument_list "(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350)" (( "(") (identifier "iVar2") (, ",") (number_literal "0xcf") (, ",") (binary_expression "*(int *)(pcVar7 + 0x3ea2c4) + -0x3350" (pointer_expression "*(int *)(pcVar7 + 0x3ea2c4)" (* "*") (cast_expression "(int *)(pcVar7 + 0x3ea2c4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar7 + 0x3ea2c4)" (( "(") (binary_expression "pcVar7 + 0x3ea2c4" (identifier "pcVar7") (+ "+") (number_literal "0x3ea2c4")) () ")")))) (+ "+") (number_literal "-0x3350")) () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(iVar2 + 0x14);" (assignment_expression "iVar2 = *(int *)(iVar2 + 0x14)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(iVar2 + 0x14)" (* "*") (cast_expression "(int *)(iVar2 + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x14)" (( "(") (binary_expression "iVar2 + 0x14" (identifier "iVar2") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (if_statement "if (iVar2 == 0) {\n      return (int *)0x0;\n    }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      return (int *)0x0;\n    }" ({ "{") (return_statement "return (int *)0x0;" (return "return") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (; ";")) (} "}"))) (if_statement "if (-1 < *(int *)(iVar2 + 0x20) << 1) {\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }" (if "if") (parenthesized_expression "(-1 < *(int *)(iVar2 + 0x20) << 1)" (( "(") (binary_expression "-1 < *(int *)(iVar2 + 0x20) << 1" (number_literal "-1") (< "<") (binary_expression "*(int *)(iVar2 + 0x20) << 1" (pointer_expression "*(int *)(iVar2 + 0x20)" (* "*") (cast_expression "(int *)(iVar2 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x20)" (( "(") (binary_expression "iVar2 + 0x20" (identifier "iVar2") (+ "+") (number_literal "0x20")) () ")")))) (<< "<<") (number_literal "1"))) () ")")) (compound_statement "{\n      pcVar7 = *(code **)(pcVar6 + 0x3ea244);\n      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);\n      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);\n      return piVar1;\n    }" ({ "{") (expression_statement "pcVar7 = *(code **)(pcVar6 + 0x3ea244);" (assignment_expression "pcVar7 = *(code **)(pcVar6 + 0x3ea244)" (identifier "pcVar7") (= "=") (pointer_expression "*(code **)(pcVar6 + 0x3ea244)" (* "*") (cast_expression "(code **)(pcVar6 + 0x3ea244)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar6 + 0x3ea244)" (( "(") (binary_expression "pcVar6 + 0x3ea244" (identifier "pcVar6") (+ "+") (number_literal "0x3ea244")) () ")"))))) (; ";")) (expression_statement "(*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);" (call_expression "(*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350)" (parenthesized_expression "(*pcVar7)" (( "(") (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) () ")")) (argument_list "(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350)" (( "(") (binary_expression "*(int *)(pcVar6 + 0x3e9a90) + 0x3574" (pointer_expression "*(int *)(pcVar6 + 0x3e9a90)" (* "*") (cast_expression "(int *)(pcVar6 + 0x3e9a90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar6 + 0x3e9a90)" (( "(") (binary_expression "pcVar6 + 0x3e9a90" (identifier "pcVar6") (+ "+") (number_literal "0x3e9a90")) () ")")))) (+ "+") (number_literal "0x3574")) (, ",") (number_literal "0xcf") (, ",") (binary_expression "*(int *)(pcVar6 + 0x3ea264) + -0x3350" (pointer_expression "*(int *)(pcVar6 + 0x3ea264)" (* "*") (cast_expression "(int *)(pcVar6 + 0x3ea264)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar6 + 0x3ea264)" (( "(") (binary_expression "pcVar6 + 0x3ea264" (identifier "pcVar6") (+ "+") (number_literal "0x3ea264")) () ")")))) (+ "+") (number_literal "-0x3350")) () ")"))) (; ";")) (expression_statement "piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);" (assignment_expression "piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" (identifier "piVar1") (= "=") (cast_expression "(int *)(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar7 + 0x3ea1e4))\n                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" (parenthesized_expression "(**(code **)(pcVar7 + 0x3ea1e4))" (( "(") (pointer_expression "**(code **)(pcVar7 + 0x3ea1e4)" (* "*") (pointer_expression "*(code **)(pcVar7 + 0x3ea1e4)" (* "*") (cast_expression "(code **)(pcVar7 + 0x3ea1e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar7 + 0x3ea1e4)" (( "(") (binary_expression "pcVar7 + 0x3ea1e4" (identifier "pcVar7") (+ "+") (number_literal "0x3ea1e4")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,\n                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc)" (( "(") (binary_expression "*(int *)(pcVar7 + 0x3e9a30) + 0x3574" (pointer_expression "*(int *)(pcVar7 + 0x3e9a30)" (* "*") (cast_expression "(int *)(pcVar7 + 0x3e9a30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar7 + 0x3e9a30)" (( "(") (binary_expression "pcVar7 + 0x3e9a30" (identifier "pcVar7") (+ "+") (number_literal "0x3e9a30")) () ")")))) (+ "+") (number_literal "0x3574")) (, ",") (number_literal "0x218") (, ",") (binary_expression "*(int *)(pcVar7 + 0x3ea204) + -0x39fc" (pointer_expression "*(int *)(pcVar7 + 0x3ea204)" (* "*") (cast_expression "(int *)(pcVar7 + 0x3ea204)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar7 + 0x3ea204)" (( "(") (binary_expression "pcVar7 + 0x3ea204" (identifier "pcVar7") (+ "+") (number_literal "0x3ea204")) () ")")))) (+ "+") (number_literal "-0x39fc")) () ")"))))) (; ";")) (return_statement "return piVar1;" (return "return") (identifier "piVar1") (; ";")) (} "}"))) (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 2);" (return "return") (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 2)" (( "(") (binary_expression "*(uint *)(iVar2 + 0x14) >> 2" (pointer_expression "*(uint *)(iVar2 + 0x14)" (* "*") (cast_expression "(uint *)(iVar2 + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x14)" (( "(") (binary_expression "iVar2 + 0x14" (identifier "iVar2") (+ "+") (number_literal "0x14")) () ")")))) (>> ">>") (number_literal "2")) () ")"))) (; ";")) (} "}"))) (return_statement "return (int *)(*(uint *)(iVar2 + 0x14) >> 2);" (return "return") (cast_expression "(int *)(*(uint *)(iVar2 + 0x14) >> 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(uint *)(iVar2 + 0x14) >> 2)" (( "(") (binary_expression "*(uint *)(iVar2 + 0x14) >> 2" (pointer_expression "*(uint *)(iVar2 + 0x14)" (* "*") (cast_expression "(uint *)(iVar2 + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x14)" (( "(") (binary_expression "iVar2 + 0x14" (identifier "iVar2") (+ "+") (number_literal "0x14")) () ")")))) (>> ">>") (number_literal "2")) () ")"))) (; ";")) (} "}")))

/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */
/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */
/* DWARF original prototype: void do_write(Mips_output_section_reginfo<64,_false> * this,
   Output_file * of) */

void __thiscall
anon_unknown.dwarf_29466b::Mips_output_section_reginfo<64,var_16>::do_write
          (Mips_output_section_reginfo<64,var_16> *this,type_3 *of)

{
  int var_3;
  int *piVar2;
  type_1 var_4;
  var_1<64,var_16> *this_00;
  type_2 ppVar4;
  type_3 *var_7;
  var_2<64> *var_8;
  int var_5;
  type_1 var_6;
  type_4 *var_13;
  type_5 *var_14;
  type_5 *var_15;
  type_6 in_stack_fffffff4;
  
  var_3 = *(int *)&(this->super_Output_section_data).super_Output_data.field_0x20;
  if (var_3 << 2 < 0) {
    var_7 = *(type_3 **)&(this->super_Output_section_data).super_Output_data.offset_;
    var_5 = (int)(this->super_Output_section_data).super_Output_data.offset_;
    if (var_3 << 1 < 0) {
      var_4 = (type_1)(this->super_Output_section_data).super_Output_data.data_size_;
      if (-1 < (int)var_7) {
        var_6 = var_4 + var_5;
        var_3 = (int)&var_7->name_ + (type_1)(var_6 < var_4);
        var_7 = (type_3 *)(type_1)(*(int *)&of->file_size_ < var_3);
        if ((var_7 == (type_3 *)0x0) &&
           ((*(int *)&of->file_size_ != var_3 || (var_6 <= (type_1)of->file_size_)))) {
          var_6 = *(type_1 *)&this->gprmask_;
          var_4 = (type_1)this->gprmask_;
          piVar2 = (int *)(of->base_ + var_5);
          var_8 = this->target_->gp_;
          piVar2[1] = (((var_6 >> 0x10) << 0x18 | (var_6 >> 0x18) << 0x10) >> 0x10) +
                      ((var_6 & 0xff) << 8 | var_6 >> 8 & 0xff) * 0x10000;
          *piVar2 = (((var_4 >> 0x10) << 0x18 | (var_4 >> 0x18) << 0x10) >> 0x10) +
                    ((var_4 & 0xff) << 8 | var_4 >> 8 & 0xff) * 0x10000;
          var_6 = *(type_1 *)&this->cprmask1_;
          var_4 = (type_1)this->cprmask1_;
          piVar2[2] = (((var_6 >> 0x10) << 0x18 | (var_6 >> 0x18) << 0x10) >> 0x10) +
                      ((var_6 & 0xff) << 8 | var_6 >> 8 & 0xff) * 0x10000;
          piVar2[1] = (((var_4 >> 0x10) << 0x18 | (var_4 >> 0x18) << 0x10) >> 0x10) +
                      ((var_4 & 0xff) << 8 | var_4 >> 8 & 0xff) * 0x10000;
          var_6 = *(type_1 *)&this->cprmask2_;
          var_4 = (type_1)this->cprmask2_;
          piVar2[3] = (((var_6 >> 0x10) << 0x18 | (var_6 >> 0x18) << 0x10) >> 0x10) +
                      ((var_6 & 0xff) << 8 | var_6 >> 8 & 0xff) * 0x10000;
          piVar2[2] = (((var_4 >> 0x10) << 0x18 | (var_4 >> 0x18) << 0x10) >> 0x10) +
                      ((var_4 & 0xff) << 8 | var_4 >> 8 & 0xff) * 0x10000;
          var_6 = *(type_1 *)&this->cprmask3_;
          var_4 = (type_1)this->cprmask3_;
          piVar2[4] = (((var_6 >> 0x10) << 0x18 | (var_6 >> 0x18) << 0x10) >> 0x10) +
                      ((var_6 & 0xff) << 8 | var_6 >> 8 & 0xff) * 0x10000;
          piVar2[3] = (((var_4 >> 0x10) << 0x18 | (var_4 >> 0x18) << 0x10) >> 0x10) +
                      ((var_4 & 0xff) << 8 | var_4 >> 8 & 0xff) * 0x10000;
          var_4 = (type_1)this->cprmask4_;
          var_6 = *(type_1 *)&this->cprmask4_;
          piVar2[4] = (((var_4 >> 0x10) << 0x18 | (var_4 >> 0x18) << 0x10) >> 0x10) +
                      ((var_4 & 0xff) << 8 | var_4 >> 8 & 0xff) * 0x10000;
          piVar2[5] = (((var_6 >> 0x10) << 0x18 | (var_6 >> 0x18) << 0x10) >> 0x10) +
                      ((var_6 & 0xff) << 8 | var_6 >> 8 & 0xff) * 0x10000;
          if (var_8 == (var_2<64> *)0x0) {
            piVar2[5] = 0;
            piVar2[6] = 0;
            return;
          }
          var_4 = *(type_1 *)&var_8->value_;
          var_6 = (type_1)var_8->value_;
          piVar2[6] = (((var_4 >> 0x10) << 0x18 | (var_4 >> 0x18) << 0x10) >> 0x10) +
                      ((var_4 & 0xff) << 8 | var_4 >> 8 & 0xff) * 0x10000;
          piVar2[5] = (((var_6 >> 0x10) << 0x18 | (var_6 >> 0x18) << 0x10) >> 0x10) +
                      ((var_6 & 0xff) << 8 | var_6 >> 8 & 0xff) * 0x10000;
          return;
        }
      }
      gold::Output_file::var_9
                ((type_3 *)this,var_10(0x4c9240,in_stack_fffffff4),(size_t)of,var_7);
    }
    (*(type_5 *)PTR_do_gold_unreachable_004c1a30)
              (var_11 + 0x3574,0xcf,var_12 + -0x3350
              );
  }
  var_13 = PTR_do_gold_unreachable_004c1a30;
  (*(type_5 *)PTR_do_gold_unreachable_004c1a30)
            (var_11 + 0x3574,0xe3,var_12 + -0x3a3c);
  var_14 = *(type_5 **)(var_13 + 0x3ea3cc);
  var_3 = *(int *)(var_13 + 0x3e9c18) + 0x3574;
  (*var_14)(var_3,0xc5,*(int *)(var_13 + 0x3ea3ec) + -0x3478);
  if (*(int *)(var_3 + 0x14) == 0) {
    return;
  }
  if (*(int *)(*(int *)(var_3 + 0x14) + 0x20) << 1 < 0) {
    return;
  }
  var_15 = *(type_5 **)(var_14 + 0x3ea398);
  (*var_15)(*(int *)(var_14 + 0x3e9be4) + 0x3574,0xcf,*(int *)(var_14 + 0x3ea3b8) + -0x3350);
  var_14 = *(type_5 **)(var_15 + 0x3ea338);
  var_3 = *(int *)(var_15 + 0x3e9b84) + 0x3574;
  (*var_14)(var_3,0xcf,*(int *)(var_15 + 0x3ea358) + -0x3350);
  if (*(int *)(var_3 + 0x14) == 0) {
    return;
  }
  if (*(int *)(*(int *)(var_3 + 0x14) + 0x20) << 1 < 0) {
    return;
  }
  var_15 = *(type_5 **)(var_14 + 0x3ea304);
  var_3 = *(int *)(var_14 + 0x3e9b50) + 0x3574;
  (*var_15)(var_3,0xcf,*(int *)(var_14 + 0x3ea324) + -0x3350);
  if (*(int *)(var_3 + 0x14) == 0) {
    return;
  }
  if (-1 < *(int *)(*(int *)(var_3 + 0x14) + 0x20) << 1) {
    var_14 = *(type_5 **)(var_15 + 0x3ea2a4);
    var_3 = *(int *)(var_15 + 0x3e9af0) + 0x3574;
    (*var_14)(var_3,0xcf,*(int *)(var_15 + 0x3ea2c4) + -0x3350);
    if (*(int *)(var_3 + 0x14) == 0) {
      return;
    }
    if (*(int *)(*(int *)(var_3 + 0x14) + 0x20) << 1 < 0) {
      return;
    }
    var_15 = *(type_5 **)(var_14 + 0x3ea244);
    (*var_15)(*(int *)(var_14 + 0x3e9a90) + 0x3574,0xcf,*(int *)(var_14 + 0x3ea264) + -0x3350);
    this_00 = (var_1<64,var_16> *)(*(int *)(var_15 + 0x3e9a30) + 0x3574);
    (**(type_5 **)(var_15 + 0x3ea1e4))(this_00,0x218,*(int *)(var_15 + 0x3ea204) + -0x39fc);
    ppVar4 = (this_00->mips_mach_extensions_).
             super__Vector_base<std::var_17<var_18,var_19>,_std::allocator<std::var_17<var_18,var_19>var_20>var_20>
             ._M_impl._M_start;
    if (*(char *)&ppVar4[1].second == '\0') {
      var_1<64,var_16>::var_21(this_00);
      if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {
        this_00->got_ =
             (var_22<64,var_16> *)
             ((int)&((this_00->dyn_relocs_).
                     super__Vector_base<(anonymous_namespace)::var_1<64,var_16>::var_23,_std::allocator<(anonymous_namespace)::var_1<64,var_16>::var_23>var_20>
                     ._M_impl._M_finish)->sym_ +
             (int)&((this_00->dyn_relocs_).
                    super__Vector_base<(anonymous_namespace)::var_1<64,var_16>::var_23,_std::allocator<(anonymous_namespace)::var_1<64,var_16>::var_23>var_20>
                    ._M_impl._M_end_of_storage)->sym_ +
             (int)(this_00->dyn_relocs_).
                  super__Vector_base<(anonymous_namespace)::var_1<64,var_16>::var_23,_std::allocator<(anonymous_namespace)::var_1<64,var_16>::var_23>var_20>
                  ._M_impl._M_start);
        *(type_6 *)&this_00->field_0x10 = 0;
        *(type_7 *)&this_00->got_plt_ = *(type_7 *)&this_00->got_plt_ & 0xbf | 0x40;
        return;
      }
                    /* WARNING: Subroutine does not return */
      var_24<64,var_16>::var_25
                ((var_24<64,var_16> *)this_00);
    }
    var_3 = 0x10;
    if ((int)(ppVar4[1].first << 6) < 0) {
      if (*(char *)((int)&ppVar4[0x10].first + 2) != '\0') {
        var_3 = 0x14;
      }
    }
    else {
      var_3 = 0x14;
    }
    if ((-1 < (int)this_00->got_plt_ << 1) && (-1 < (int)this_00->got_plt_ << 3)) {
      this_00->got_ =
           (var_22<64,var_16> *)
           (var_3 * (int)(this_00->copy_relocs_).super_Copy_relocs<9,_64,var_16>.dynbss_);
      *(type_6 *)&this_00->field_0x10 = 0;
      *(type_7 *)&this_00->got_plt_ = *(type_7 *)&this_00->got_plt_ & 0xbf | 0x40;
      return;
    }
                    /* WARNING: Subroutine does not return */
    var_24<64,var_16>::var_25
              ((var_24<64,var_16> *)this_00);
  }
  return;
}


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

int * MASKED(int param_1,int param_2)

{
  int *piVar1;
  int iVar2;
  uint uVar3;
  uint uVar4;
  undefined *puVar5;
  code *pcVar6;
  code *pcVar7;
  
  if (*(int *)(param_1 + 0x20) << 2 < 0) {
    if (*(int *)(param_1 + 0x20) << 1 < 0) {
      if (-1 < *(int *)(param_1 + 0x18)) {
        uVar4 = *(uint *)(param_1 + 0x14) + *(int *)(param_1 + 0x1c);
        iVar2 = (uint)(uVar4 < *(uint *)(param_1 + 0x14)) + *(int *)(param_1 + 0x18);
        if ((iVar2 <= *(int *)(param_2 + 8)) &&
           ((*(int *)(param_2 + 8) != iVar2 || (uVar4 <= *(uint *)(param_2 + 0xc))))) {
          uVar3 = *(uint *)(param_1 + 0x38);
          uVar4 = *(uint *)(param_1 + 0x3c);
          piVar1 = (int *)(*(int *)(param_2 + 0x10) + *(int *)(param_1 + 0x1c));
          iVar2 = *(int *)(*(int *)(param_1 + 0x30) + 0x18);
          piVar1[1] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          *piVar1 = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                    ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          uVar3 = *(uint *)(param_1 + 0x40);
          uVar4 = *(uint *)(param_1 + 0x44);
          piVar1[2] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          piVar1[1] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          uVar3 = *(uint *)(param_1 + 0x48);
          uVar4 = *(uint *)(param_1 + 0x4c);
          piVar1[3] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          piVar1[2] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          uVar3 = *(uint *)(param_1 + 0x50);
          uVar4 = *(uint *)(param_1 + 0x54);
          piVar1[4] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          piVar1[3] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          uVar4 = *(uint *)(param_1 + 0x5c);
          uVar3 = *(uint *)(param_1 + 0x58);
          piVar1[4] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          if (iVar2 == 0) {
            piVar1[5] = 0;
            piVar1[6] = 0;
            return piVar1;
          }
          uVar4 = *(uint *)(iVar2 + 0x30);
          uVar3 = *(uint *)(iVar2 + 0x34);
          piVar1[6] = (((uVar4 >> 0x10) << 0x18 | (uVar4 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar4 & 0xff) << 8 | uVar4 >> 8 & 0xff) * 0x10000;
          piVar1[5] = (((uVar3 >> 0x10) << 0x18 | (uVar3 >> 0x18) << 0x10) >> 0x10) +
                      ((uVar3 & 0xff) << 8 | uVar3 >> 8 & 0xff) * 0x10000;
          return piVar1;
        }
      }
      FUN_000d5cdc();
    }
    (*(code *)PTR_do_gold_unreachable_004c1a30)
              (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xcf,PTR_s__s_004c1a50 + -0x3350
              );
  }
  puVar5 = PTR_do_gold_unreachable_004c1a30;
  (*(code *)PTR_do_gold_unreachable_004c1a30)
            (PTR_s_ral_options14Struct_no_crefE_004c127c + 0x3574,0xe3,PTR_s__s_004c1a50 + -0x3a3c);
  pcVar6 = *(code **)(puVar5 + 0x3ea3cc);
  iVar2 = *(int *)(puVar5 + 0x3e9c18) + 0x3574;
  (*pcVar6)(iVar2,0xc5,*(int *)(puVar5 + 0x3ea3ec) + -0x3478);
  iVar2 = *(int *)(iVar2 + 0x14);
  if (iVar2 == 0) {
    return (int *)0x0;
  }
  if (*(int *)(iVar2 + 0x20) << 1 < 0) {
    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);
  }
  pcVar7 = *(code **)(pcVar6 + 0x3ea398);
  (*pcVar7)(*(int *)(pcVar6 + 0x3e9be4) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea3b8) + -0x3350);
  pcVar6 = *(code **)(pcVar7 + 0x3ea338);
  iVar2 = *(int *)(pcVar7 + 0x3e9b84) + 0x3574;
  (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea358) + -0x3350);
  iVar2 = *(int *)(iVar2 + 0x14);
  if (iVar2 == 0) {
    return (int *)0x0;
  }
  if (*(int *)(iVar2 + 0x20) << 1 < 0) {
    return (int *)(*(uint *)(iVar2 + 0x14) >> 3);
  }
  pcVar7 = *(code **)(pcVar6 + 0x3ea304);
  iVar2 = *(int *)(pcVar6 + 0x3e9b50) + 0x3574;
  (*pcVar7)(iVar2,0xcf,*(int *)(pcVar6 + 0x3ea324) + -0x3350);
  iVar2 = *(int *)(iVar2 + 0x14);
  if (iVar2 == 0) {
    return (int *)0x0;
  }
  if (-1 < *(int *)(iVar2 + 0x20) << 1) {
    pcVar6 = *(code **)(pcVar7 + 0x3ea2a4);
    iVar2 = *(int *)(pcVar7 + 0x3e9af0) + 0x3574;
    (*pcVar6)(iVar2,0xcf,*(int *)(pcVar7 + 0x3ea2c4) + -0x3350);
    iVar2 = *(int *)(iVar2 + 0x14);
    if (iVar2 == 0) {
      return (int *)0x0;
    }
    if (-1 < *(int *)(iVar2 + 0x20) << 1) {
      pcVar7 = *(code **)(pcVar6 + 0x3ea244);
      (*pcVar7)(*(int *)(pcVar6 + 0x3e9a90) + 0x3574,0xcf,*(int *)(pcVar6 + 0x3ea264) + -0x3350);
      piVar1 = (int *)(**(code **)(pcVar7 + 0x3ea1e4))
                                (*(int *)(pcVar7 + 0x3e9a30) + 0x3574,0x218,
                                 *(int *)(pcVar7 + 0x3ea204) + -0x39fc);
      return piVar1;
    }
    return (int *)(*(uint *)(iVar2 + 0x14) >> 2);
  }
  return (int *)(*(uint *)(iVar2 + 0x14) >> 2);
}

